就是用ComboBox1的数值进行查询在显示到dbgrid上

解决方案 »

  1.   

    在OnChange事件中做,取 combox的Text值作为你的查询参数'select * from TableA where fieldA = '+ combox1.Text;
      

  2.   

    procedure TForm1.ComboBox1Change(Sender: TObject);
    begin
      with ADOQuery1,sql do
      begin
        close;
        clear;
        Add('select * from wage where WName='+ComboBox1.text);
        open;
      end;
    end;
    我写的总是说列名无效啊
      

  3.   


    procedure TForm1.FormCreate(Sender: TObject);
    begin
      with ADOQuery1,sql do
      begin
        close;
        clear;
        Add('select * from wage');
        open;
      end;
      ComboBox1.AddItem( '光复1',ComboBox1);
      ComboBox1.AddItem( '光复2',ComboBox1);
      ComboBox1.AddItem( '光复3',ComboBox1);
      ComboBox1.AddItem( '光复4',ComboBox1);
      ComboBox1.AddItem( '光复5',ComboBox1);
      ComboBox1.AddItem( '光复6',ComboBox1);
      ComboBox1.AddItem( '光复7',ComboBox1);
      ComboBox1.AddItem( '光复8',ComboBox1);
      ComboBox1.AddItem( '光复9',ComboBox1);
      ComboBox1.AddItem( '光复10',ComboBox1);
      end;procedure TForm1.ComboBox1Change(Sender: TObject);
    begin
      with ADOQuery1,sql do
      begin
        close;
        clear;
        Add('select * from wage where WName='''+combobox1.SelText+'''');
        open;
      end;
    end;
    显示不出我想要的结果
      

  4.   

    先把sql语句到数据库中执行一下,看字段是否正确,而且with 语句最好不要这样写, 搞不好会出错的
      

  5.   

    1楼+5楼的答案就行
    只要SQL语句正确没什么问题
      

  6.   

    procedure TForm1.FormCreate(Sender: TObject);
    begin
      with ADOQuery1,sql do
      begin
        close;
        clear;
        Add('select * from wage');
        open;
      end;
      ComboBox1.Items.Add('光复1');
      ComboBox1.Items.Add('光复2');
      ComboBox1.Items.Add('光复3');
      ComboBox1.Items.Add('光复4');
      ComboBox1.Items.Add('光复5');
      ComboBox1.Items.Add('光复6');
      ComboBox1.Items.Add('光复7');
      ComboBox1.Items.Add('光复8');
      ComboBox1.Items.Add('光复9');
      ComboBox1.Items.Add('光复10');
      ComboBox1.Items.Add('光复11');
      end;procedure TForm1.ComboBox1Change(Sender: TObject);
    begin
      with ADOQuery1,sql do
      begin
        close;
        clear;
        Add('select * from wage where WName='''+combobox1.SelText+'''');
        open;
      end;
    end;
    sql编译了没错
    开始时有显示全部的
    改了combobox1的值后就没有显示
    是不是我的代码有什么问题?
      

  7.   

    Add('select * from wage where WName='''+combobox1.SelText+'''');
    combobox1.SelText改为combobox1.Text
      

  8.   


    combobox1.SelText
      

  9.   

    个人更支持用Click 事件!!
      

  10.   

    支持,不过也有时用过change事件