有表:Id,Name 想在下拉列表框中显示Name,选择后可获得Id值, 下拉列表框动态生成,个数不定。
//载入
procedure TForm1.FormCreate(Sender: TObject);
var
PID: PInteger;
i: integer;
begin
with ComboBox1 do
for i := 0 to 20 do
begin
new(PID);
PID^ := i;
items.AddObject('item' + inttostr(i), TObject(PID));
end;
end;
//使用
procedure TForm1.ComboBox1Change(Sender: TObject);
var
ID: integer;
begin
ID := PInteger(ComboBox1.Items.Objects[ComboBox1.ItemIndex])^;
showmessage(ComboBox1.Items[ComboBox1.ItemIndex] + #13#10 +
inttostr(ID));
end;
//删除
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
i: integer;
begin
for i := 0 to ComboBox1.Items.Count - 1 do
Dispose(ComboBox1.Items.Objects[i]);
ComboBox1.Clear;
end;