我的想法就是通过dept_id来实现,但是不知道怎么做?
望高手指点迷津,在线等待!

解决方案 »

  1.   

    响应相应的事件罗,也可以自己定义一个过程函数的嘛!
    for example:
    响应ComboBox1的onchange事件,然后用Sql语句给ConboBox2,3中的items加入相关的内容哦
      

  2.   

    在ComboBo1的onchange事件中执行查询
      

  3.   

    在ComboBox1的onchange中进行,根据combobox1的内容来检索其他的相关信息
      

  4.   

    procedure TForm1.ComboBox1OnChange(Sender: TObject);
    var
      str, str1, str2: string;
    begin
      Deptcode.Locate('Content', ComboBox1.Items[ComboBox1.ItemIndex], []);
      str := Deptcode.FieldByName('dept_id').AsString;
      A01.Locate('dept_id', str, []);
      str1 := A01.FieldByName('A0101').AsString;
      ComboBox2.ItemIndex := ComboBox2.Items.IndexOfName(str1);  standrd.Locate('dept_id', str, []);
      str2:= A01.FieldByName('Standard_name').AsString;
      ComboBox3.ItemIndex := ComboBox3.Items.IndexOfName(str2);
    end;
      

  5.   

    onchange ,然后把选中的文本到相应的数据库中查询
    循环添加到combobox2.和combobox3中
      

  6.   

    这个是我的代码(只是人员部分的),大家帮我看看:
    procedure TForm2.ComboBox1Change(Sender: TObject);
    begin
    query1.Close;
    query1.Open;
    if query1.Locate('Content',Trim(combobox1.text),[]) then
         begin
          deptid_s:=query1.FieldByName('dept_id').Asstring;
          query1.sql.add('select * from A01 where dept_id='deptid_s'');
          while not query1.Eof do
             begin
              ComboBox2.Items.Append(query1.fieldbyname('A0101').AsString);
              query1.Next;
             end;
         end;
         
    end;