delphi绑定ComboBox数据

2016-10-14 21:39:39来源:CSDN作者:CSDNmyACCP_S2人点击

delphi中没有像.Net那样直接把数据库中查出的数据绑定到控件上面,例如查询的是一个省份表,TcomboBox的item显示为省份名称,当选择某个省份之后获取对应的省份id。delphi 中没有这么简便的方法,请教了一位大牛级别的大神,了解到了一个非常简便的方法。

第一步创建一个类
type
THospitalClass =class(TObject)
private
Name :stirng; //名称
Id :Integer;//id
end;

第二步 在数据库中查询出来数据后创建这个对象添加进ComboBox控件中

var
Obj : THospitalClass;
{释放创建的对象,delphi 一定得注意创建之后得释放}
DestoryHospital(cmbHospital);

Obj := THospitalClass.Caeate;
obj.name :=Query.FieldBYName(‘name’).AsString;
obj.Id :=Query.FieldBYName(‘name’).AsInteger;
cmdHospital.Items.AddOBject(obj.id,Obj);

第三步 获取选中的医院所对应的id
var
Hospital : THospitalClass;

hospital :=THospital(cmbhospital.Items.Object[cmbhospital.ItemIndex]);

hosopital.id 即为我们所需要操作的id

procedure DestoryHospital(AcomboBox: TcomboBox)
var
i :Integer;
begin
for int i:=0 in AcomboBox.Items.Count-1 do
if Assigned(AcomboBox.items.Object[i])
AcomboBox.Items.Object[i].Destory;
AcomboBox.Clear;

end;

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台