不知道delphi自带的下拉框控件(datacontrol)能否实现一带2的功能,也就是控件能关联上两个字段(Text,value),text显示用,value便于实现数据库方面的功能

解决方案 »

  1.   

    to chenzhuo:
    老大,能否写一个看看?
      

  2.   

    去delphibox里找找,应该有这方面的控件!
      

  3.   

    Delphi的下拉框的Items是TStrings类的,每个项目可以添加Object
    以Combox为例:
    添加项目时:var
      Value:Pointer;
    begin
      New(Value);
      Value:=PChar('Value');
      ComboBox1.AddItem('哈哈',Value);读取项目时:
      Text:=ComboBox1.Text
      Value:=PChar(ComboBox1.Items.Objects[ComboBox1.ItemIndex]);
      

  4.   

    to hswong:
    你的方法当然可行,不过你也应该看到我是和数据库相关的,可能事先我没说清楚,我这个下拉框是和数据库的某个字段绑定的,但是我想能同时绑定两个字段,如果vs2003或者vs2005提供的那个下拉框控件样的,能同时绑定两个字段
      

  5.   

    to hswong:
    如果像你这样来做的话,首先查询数据库,其次还要遍历数据库并形成一个object组,这样似乎没效率样的.to chenzhuo:
    应该有?你帮我看看好么,我刚才看了下似乎没有样的
      

  6.   

    to lukeguo:
    老大,如果有,麻烦你发送到[email protected](126.com,yahoo.com,gmail.com,用户名都一样)看你有哪个邮箱就发到我相应的邮箱里面咯
      

  7.   

    应用控件时,在程序里自动定义的:
        dxcustomer: TdxDBLookupEdit;控件有4个安装程序,安装完后有很多控件出来,但是这个控件在哪个里就不知道了,可能是这个(猜的):
    DevExpress ExpressQuantumGrid Pro v3.2.1 Suite for Delphi64个安装程序都是以DevExpress Express开头。
    实现2个字段列表:
    在ListFieldName选项中,填入两个字段就可以了,例如:customer_id;customer_name,分号连接。
      

  8.   

    装个ehlib6.0控件
    里面的下拉框中有这种功能的实现
    很简单
      

  9.   

    hfltp(红枫叶) 
    你说的真的假的.我怎么不能实现啊?
      

  10.   

    我说的功能是
    在dbcomboboxeh中有两个item属性
    在两个属性中填写好对应的值后,可以自动对应
    比如寒风   1
    寒风1  2
    寒风2  3在下拉框中显示的是寒风,但录入数据库中的值是1跟楼主说的功能是不是一样?
      

  11.   

    to lukeguo:
     没收到你的控件啊
    to hfltp(红枫叶):
     谢谢了,我试试,如果你说的控件能实现你描述的功能那太好了,成功后给分
      

  12.   

    还有一个办法.就是做两个ComboBox控件.一个放值一个放文本.当文本选正改变时.放值的那一个的itemindex也跟着改变就成了.付值的时候就一起付
      

  13.   

    可以啊,dblookupcombobox里的listfield属性中将要显示的两个字段当中用';'分开就可以显示2个字段值了
      

  14.   

    to idwb:
      看来你没有仔细看我说的,我是存储的一个字段是针对进行数据库操作的value,另外一个字段是针对显示内容的text,并不是显示两个字段的内容
      

  15.   

    to qiankun19851231:
      你说的方法我当然想到,是可以按你说的那样来做,你应该看到我前面说的我是想有个控件能绑定两个字段(单独的)一个绑定text字段,一个绑定value字段
      

  16.   

    to hfltp(红枫叶):
    仔细看了才知道,你说的这些需要读取数据库后然后再写入这两个字段,不太符合我的要求,
    还有人知道哪个控件能分别绑定数据表里面两个字段么(一个显示用,一个数据库使用)
      

  17.   

    ExpressEditors
    这个控件包,好像是叫这个里面的这个TcxDBLookupComboBox
    它能满足你的要求。
      

  18.   

    to redher:
      我再说明白了,比如一个数据表a,它有id,name两个字段,我想把这两个字段同时绑定在控件上,id用于数据库方面的操作不用显示出来,name是内容需要显示出来。如果.net 里面的dropdownlist就有datatextfield和datavaluefield两个属性可以绑定一个数据集合里面的两个字段
      

  19.   

    你说的是自动绑定两个字段值,用于数据操作?
    这个我就不知道了
    我们做的时候一个就是用代码将这两个字段的值加入到控件的相应属性中,
    还有就是用LOOKUP字段来进行对应,但这样需要两个控件。