我用的是ADO接口 已经和后台连起来了 
现在想用两个combobox的下拉菜单做查询条件 怎么实现啊 跪求答案 同时再添加一个查询按钮 按钮的click事件的代码怎么写哦 请指教 帮帮忙 对了 最后是要显示在DBGrid中的

解决方案 »

  1.   

    下拉里面就是条件吗,你组合成sql不就可以了,比如'select * from tableA where title ='+QuotedStr(combox1.text)
      

  2.   

    類似這樣
    procedure TRes_HrCq_TXD_F.cx_txcbPropertiesChange(Sender: TObject);
    var
      Strbm:string;
      i:Integer;
    begin
      inherited;
      cx_bmkb.Properties.Items.Clear;
      cx_bmkb.Text:='';
      if (Length(_PLANER_ID)>=7) and (Trim(_KyeTxcb)<>'') and (Trim(_KyeTxbm)<>'') and (Trim(_KyeTxkb)<>'') and (trim(_KyeTxZJQF)='') then
      begin
        Strbm:=' and BM in ('+ Trim(ReturnBM(_UserBm))+') ';
        qry_BaseTemp.Close;
        qry_BaseTemp.SQL.Text:=' select BM from Res_User_Temp where JN=''在職'' and CB='''+ Trim(cx_txcb.Text)+''' where bm is not null group by bm '+ Strbm;
        qry_BaseTemp.Open;
        qry_BaseTemp.First;
        for i:=0 to qry_BaseTemp.RecordCount -1 do
        begin
          cx_bmkb.Properties.Items.Add(Trim(qry_BaseTemp.FieldValues['BM']));
          qry_BaseTemp.Next;
        end;
      end;
      

  3.   

    给你一段代码,是通过Combobox.text,作为参数选择显示数据库:
    var SQL,DateS:string;
    begin
      SQL:='select * from 主粮副食采购 where ';
      if ComboBox9.Text<>'' then
      begin
        SQL:=SQL+'(日期>='+#39+ComboBox9.Text+#39+') ';
      end;
      if ComboBox10.Text<>'' then
      begin
        SQL:=SQL+'and (日期<='+#39+ComboBox10.Text+#39+') ';
      end;
      DataModule1.ClientDataSet1.Active:=False;
      DataModule1.ClientDataSet1.DataRequest(SQL);
      DataModule1.ClientDataSet1.Active:=True;
    end;