这是我的数据表结构:
主任医师 正高
主任技师 正高
副主任医师 副高
副主任技师 副高
主治医师 中级
主管技师 中级
医师 初级
医士 初级
如何使当我在ComboBox1中选择"正高,副高,中级,初级"时ComboBox2会显示出相应的内容.我是一个delphi的初学者,希望大家都能帮帮我,说得详细些~~~谢谢
主任医师 正高
主任技师 正高
副主任医师 副高
副主任技师 副高
主治医师 中级
主管技师 中级
医师 初级
医士 初级
如何使当我在ComboBox1中选择"正高,副高,中级,初级"时ComboBox2会显示出相应的内容.我是一个delphi的初学者,希望大家都能帮帮我,说得详细些~~~谢谢
combobox2.text = combobox1.text; // combobox2.itemindex = combobox1.itemindex;
procedure TForm1.FormShow(Sender: TObject);
begin
with adoquery1 do
begin
Close;
SQL.Text:='select distinct [字段1] from 表名';
Open;
First;
while not eof do
begin
combobox1.Items.Add(FieldByName('字段1').AsString);
next;
end;
end;
end;
以上代码是动态加载"正高,副高,中级,初级" 其中distinct不会取重复值..procedure TForm1.ComboBox1Change(Sender: TObject);
var
a1:string;
begin
a1:=ComboBox1.Text;
with adoquery1 do
begin
Close;
SQL.Text:='select * from 表名 where 字段1='''+a1+'''';
open;
First;
while not eof do
begin
ComboBox2.Items.Add(FieldByName('字段2').AsString);
next;
end;
end;
end;
以上代码是,当你选择了"正高,副高,中级,初级"时,ComboBox2会自动给出相应的值..
procedure TfrmneituiManage.ComboBox1Change(Sender: TObject);
var
a1:string;
begin
ComboBox2.Items.clear;
a1:=ComboBox1.Text;
with query do
begin
Close;
sql.clear;
SQL.Text:='select 字段2 from 表名 where 字段1='''+a1+'''';
ComboBox2.Enabled:=true;
open;
First;
while not eof do
begin
ComboBox2.Items.Add(FieldByName('字段2').AsString);
next;
end;
end;
end;
谢谢swcsoft,也要谢谢andyzhou1101和Elysium.....