我想使DBCombobox控件的下拉框中体现一张表中的一整列数据,我用的是BDE类控件,把相关的控件全都设好,为了证明我没有设错我先放了个DBGrid控件,是可以体现该列数据的,然后我放了DBCombobox控件,在Datafield属性中设了该列名,可是编译后只能体现表中的第一行数据,下拉框中没有任何数据,请各位大大分析一下问题出在哪里。

解决方案 »

  1.   

    用combobox自己添加Item不是很好码,Item的text 可以自己定制
    何必用dbcombox,
      

  2.   

    你要的效果要使用DBLookupComboBox
      

  3.   

    DBLookupComboBox到底要设置哪几个属性,才能达到楼主所说的效果。
      

  4.   

    DBLookupComboBo相对简单,只需设置ListSource(你的表)和ListField(你的列)即可
    KeyField是不是必须的我忘了,你一试便知。
      

  5.   

    为什么DBLookupComboBo是灰色的不能下拉,要设哪个属性
      

  6.   

    我也经常用你所说的功能但我用combobox,我觉得这样比较灵活,我最讨厌设置这样那样的参数了!
    这是我写的一个过程:procedure additem(dataset: TADODataSet;combo:Tcombobox;tabname:string;fieldname:string;bm:boolean) ;
    begin
        combo.Items.Clear;
        DataSet.CLOSE;
        DataSet.commandtext:='select * from '+tabname  ;
        DataSet.open;
        while not DataSet.Eof do begin
            if bm=true then
            combo.Items.Add(DataSet.FieldByName('编码').asstring+'--'+DataSet.FieldByName(fieldname).asstring) 
            else  combo.Items.Add(DataSet.FieldByName(fieldname).asstring);        DataSet.Next;
        end;
        DataSet.close;
    end;
      

  7.   

    用DBlookupcombobox吗,只须设置ListSource:你所需要在ComboBox中显示的表,ListField:你需要显示的字段,KeyField:与ComboBox中显示的表所建立关联的字段,DataSource当前表