dblookupcomboboxeh的listsource为下表:
bm    xm
1     王二
2   李四
3     赵大
………………
我设置了keyfield\listfield\listindex属性,要么输入bm的值后显示的就是bm的值,要么输入xm的值后显示的就是xm的值。
现在想要实现在dblookupcomboboxeh中输入bm的值后,dblookupcomboboxeh中显示为相应xm的值。例如:输入'2'焦点离开后dblookupcomboboxeh中显示为'李四'。
如果dblookupcomboboxeh不能实现这样的功能,推荐其它控件也可。

解决方案 »

  1.   

    不用dblookupcombobox,可以用dbcombobox,处理onchange事件
      

  2.   

    建议用这样一个做法:
    用一个dbcombobox和一个lable,dbcombobox用于选择,lable用于显示对应的另一个值(在dbcombobox的onchange或者onexit事件修改lable的caption)
      

  3.   

    在dblookupcomboboxeh的OnExit中用一个函数取得其对应值再写入dblookupcomboboxeh中不行吗
      

  4.   

    up   
    hunterht(核桃-俺就是核桃的马甲) 說的好像行不通
      

  5.   

    不用dblookupcombobox,可以用dbcombobox,处理onchange事件
    =============
    select一个行了,什么输入控件都行dblookupcombobox好像没有输入功能?
      

  6.   

    sorry,我没有看,只会UP,YOU Sai UP都有分地,UP
      

  7.   

    dblookupcombobox不如dbcombobox好用啊,在dbcombobox的onchange事件里写代码把
    up!
      

  8.   

    建议用dbComboobox,顶!!!up!!!
      

  9.   

    up...没用过那个,只能帮你up一下
      

  10.   

    呵呵!up也有分,
    UP UP UP!!!
      

  11.   

    dblookupcomboboxeh.onexit事件中自己处理,应该不会太难
      

  12.   

    DBLookupComboBox_dep.ListSource:=DataSource1;
      DBLookupComboBox_dep.ListField:='xm';
      DBLookupComboBox_dep.KeyField:='bm';
    但好象不能用keyfieldindex来控制显示哪一个,因为它与其指向的表相连,所以只能显示其表聚焦的地方。你只能靠控制对表的记录焦点控制来控制它的输出。其实一般用这个控件是用两张表,分别用两个Table指向,然后在主表中也设字段键入索引号,在设置DBLookupComboBox_dep.DataSource和DBLookupComboBox_dep.DataField分别指向主表以及其字段,副表设置不变,靠控制主表中的索引来达到控制控件输出所要求文字的结果。不过用ComboBox倒是可以,在Items中逐行输入所有的姓名,然后靠在ItemIndex中输入索引号来控制输出,不过估计不会满足你的需要(不是从表中直接调)~v~
      

  13.   

    用WwDbLookUpcombobox吧(InforPower) ,
    十會好用下拉前有
    BeforeDropDown(Sender: TObject) 事件
    下拉後有
    CloseUp(Sender: TObject; LookupTable,  FillTable: TDataSet; modified: Boolean);
    事件
      

  14.   

    up
    我也正头痛呢!!!!
    我的程序编译后为什么不能在其它机器上用!!!
    偶系新手。进来帮忙up的Up Up Up Up Up Up Up Up Up Up Up Up Up