type pFields=^TFields;//定义一个记录集 TFields=Record ID,Name:String; Code:Integer; end;在添加到ComboBox时如下: var pF:pFields; begin New(pF); pF.ID:=ADOQuery1.FieldByName('ID').AsString; pF.CName:=ADOQuery1.FieldByName('CName').AsString; pF.Code:=ADOQuery1.FieldByName('Code').AsInteger; ComboBox1.Items.AddObject(pF.CName,TObject(pF));//ComboBox1.Items.AddObject('要显示的内容',TObject(记录集(不能为nil)));调用时如下: begin if ComboBox1.ItemIndex<0 then Exit; Edit1.Text:=IntToStr(pFields(ComboBox1.Items.Object[ComboBox1.ItemIndex]).Code); end;
procedure TForm1.FormShow(Sender: TObject);
begin
ComboBox1.Items.Clear;
ComboBox2.Items.Clear;
ComboBox1.Items.Add('博士');
ComboBox1.Items.Add('硕士');
ComboBox1.Items.Add('本科');
ComboBox1.Items.Add('小学');
ComboBox2.Items.Add('10');
ComboBox2.Items.Add('9');
ComboBox2.Items.Add('8');
ComboBox2.Items.Add('7');
end;procedure TForm1.ComboBox1Change(Sender: TObject);
begin
ComboBox2.ItemIndex:=ComboBox1.ItemIndex;
ShowMessage(ComboBox2.Text);
end;
pFields=^TFields;//定义一个记录集
TFields=Record
ID,Name:String;
Code:Integer;
end;在添加到ComboBox时如下:
var pF:pFields;
begin
New(pF);
pF.ID:=ADOQuery1.FieldByName('ID').AsString;
pF.CName:=ADOQuery1.FieldByName('CName').AsString;
pF.Code:=ADOQuery1.FieldByName('Code').AsInteger;
ComboBox1.Items.AddObject(pF.CName,TObject(pF));//ComboBox1.Items.AddObject('要显示的内容',TObject(记录集(不能为nil)));调用时如下:
begin
if ComboBox1.ItemIndex<0 then Exit;
Edit1.Text:=IntToStr(pFields(ComboBox1.Items.Object[ComboBox1.ItemIndex]).Code);
end;