QDataSet 枚举一到多个字段组合的所有值

我们在许多时候,需要从数据集中将一组值传递给一个列表框供用户选择。而实现这一方式的基本算法都是遍历并去重,QDataSet 提供 EnumValues 函数来完成这一功能:

EnumValues 的几个参数说明如下:

  • AFields : 要枚举值的字段列表,多个字段的话,中间以 “,” 或 “;” 分隔
  • AList : 用于存贮返回值的字符串列表对象
  • AValueDelimiter : 列表多个字段的值时,用于分区多个值的分隔符
  • AIgnoreNull : 是否忽略字段值为空的情况,如果为 False ,空值会返回字符串 NULL ,如果为 True,空值返回空字符串

比如一行的数据如下:

我们调用 EnumValues(‘Spell,Name’,AList,’|’,true) 会得到下面的两个字符串:

如果设置 AValueDelimiter 为 #0 ,则得到的结果为:

如果只有一个字段,则 AValueDelimiter 参数被忽略。

分享到:

0 条评论

沙发空缺中,还不快抢~