一打开form,其中的RxDBLookupCombo为空白
代码如下:
procedure Tfrm_db_dm.dblc_oqr
             (var dblc_tmp: TRxDBLookupCombo; sql_str: string ;
             display_name: string ; display_value:string );
var 
     oqr_tmp: TORAQuery;
    ods_tmp: TORADataSource;
begin
  oqr_tmp := TORAQuery.Create(self);
  ods_tmp := TORADatasource.Create(self);
  ods_tmp.DataSet := oqr_tmp;
 
 with oqr_tmp do
  begin
      Close;
      SQL.Add(sql_str);
      Open;
      
      if not oqr_tmp.IsEmpty then
      begin
      dblc_tmp.LookupSource  := ods_tmp;
      dblc_tmp.LookupField := display_value;
      dblc_tmp.LookupDisplay := display_name;
      end ;
  end ;我想在使得RxDBLookupCombo空白中默认填写下拉框内的第一条记录,看有没有这个属性,我看了一下,估计没有这个属性,你可以问问如何写触发事件,一进去就让form直接选第一项,但我不知道怎么写,
 
ps:RxDBLookupCombo是第三方rxlib控件包下的控件,

解决方案 »

  1.   

    想必也有类似ComboBox,或DBComboBox的ItemIndex属性
    那么你在Form的OnActicave事件中加入
    RxDBLookUpCombo.ItemIndex := 0;
      

  2.   

    没有用过这个控件,不过看名字好像是combobox衍生出来的。设它的itemindex属性为0或1。如果有的话。
      

  3.   

    Combox是把ItemIndex设为0就是第一项了, 应该是一样的做法
      

  4.   

    RxDBLookupCombo是与数据库关联的控件。当他关联的数据集有记录时就应该有数据显示。当没有数据显示时就是关联的数据集没有打开或关联的字段没有对应数据。若想有默认显示就应该给关联数据集的相关字段设置默认值。
      

  5.   

    点击添加数据按钮时,向RxDBLookupCombo(假设name=lookup)发送方向键向下的消息,模拟向下按键。
    postmessage(lookup.Handle,WM_KeyDown,VK_Down,0);
      

  6.   

    你的程序只是指定了填充记录集,没有指定绑定的记录集
    RxDBLookupCombo1.DataSource=?
    你必须指定绑定的记录集LookupSource是填充列表记录集
    DataSource是绑定的记录集
    DataSource中的DataField值必须从LookupSource的列表中取
      

  7.   

    这样的结构是为了提供代码翻译的功能,当你定位到一个记录的时候,他会根据LookupSource中的代码表将DataSource中的代码翻译过来,如果你新增一条记录的,你要选择一个项目,他会给你翻译成代码存到数据库中
      

  8.   

    RxDBLookupCombo是与数据库关联的控件
      

  9.   

    RAIZE控件包,用RxCombox算了,直接ADDITEMS然后ItemIndex:=0不就行了
      

  10.   

    在TRxDBLookupCombo中,类是Combox的属性是KeyValue,而不是ItemIndex。
    所以RxDBLookupCombo.KeyValue:=0就行了
      

  11.   

    我怎么给分给aikenliu啊,这是不是帮主的事啊,呵呵,度假两天回来这么爽,再次感谢各位大侠,还请日后多多指教!!