如果存放在配置文件中,参考代码var fl:TIniFile; s:string; i:integer; begin fl:=TIniFile.Create(self.vg_path+'DataDictionary.ini'); s:=combobox1.text;//大类 s:=fl.ReadString(s,'type',''); combobox2.items.clear; if s<>'' then ExtractStrings(['|'],[],PChar(s),self.combobox2.Items); fl.Free; end;
存放在数据库中,参考代码var s,s1:string; begin s:=self.combobox1.text;//大类 self.combobox2.items.clear; self.ADOQuery1.Close; self.ADOQuery1.Connection:=self.ADOConnection1; self.ADOQuery1.SQL.Clear; Self.ADOQuery1.SQL.Add('select * from lb where lei=:s1'); Self.ADOQuery1.Parameters.ParamByName('s1').Value:=s; Self.ADOQuery1.Open; Self.ADOQuery1.First; while not Self.ADOQuery1.Eof do begin s1:=self.ADOQuery1.FieldByName('type').AsString;//小类 self.combobox2.items.add(s1); self.adoquery1.next; end;
2.选择大类时,通过combobox的onchange事件,自动生成小类
fl:TIniFile;
s:string;
i:integer;
begin
fl:=TIniFile.Create(self.vg_path+'DataDictionary.ini');
s:=combobox1.text;//大类
s:=fl.ReadString(s,'type','');
combobox2.items.clear;
if s<>'' then
ExtractStrings(['|'],[],PChar(s),self.combobox2.Items);
fl.Free;
end;
s,s1:string;
begin
s:=self.combobox1.text;//大类
self.combobox2.items.clear;
self.ADOQuery1.Close;
self.ADOQuery1.Connection:=self.ADOConnection1;
self.ADOQuery1.SQL.Clear;
Self.ADOQuery1.SQL.Add('select * from lb where lei=:s1');
Self.ADOQuery1.Parameters.ParamByName('s1').Value:=s;
Self.ADOQuery1.Open;
Self.ADOQuery1.First;
while not Self.ADOQuery1.Eof do
begin
s1:=self.ADOQuery1.FieldByName('type').AsString;//小类
self.combobox2.items.add(s1);
self.adoquery1.next;
end;