怎么在delphi中用combobox动态显示数据库中表的内容用grid显示?
展开全部
楼主好~~先来说一下要用到的相关控件及其属性:
ADOConnection:首先数据库要连好喔(废话一下),就是设置好连接字符串,使得ADOConnection的connected属性为true;
ADOTabel:connection属性就为刚才的ADOConnection控件,通过它连到数据库;
DataSource:DataSet属性为刚才的ADOTabel控件;
DBgrid:DataSource属性为刚才的DataSource控件
然后就是您说的combobox和button啦,这两个不用改
接下来要稍微写点代码才能实现您说的功能~~
(1)在窗体创建事件onCreate或显示事件onShow触发之时,要将数据库的表名填写到combobox控件(可以参考下面的代码):
procedure TForm1.FormCreate(Sender: TObject);
begin
self.ADOConnection1.GetTableNames(self.ComboBox1.Items);
end;
(2)button单击事件onCLick(可参考下面的代码):
procedure TForm1.Button1Click(Sender: TObject);
begin
if self.ComboBox1.Text<>'' then begin
self.ADOTable1.Close;
self.ADOTable1.TableName:=self.ComboBox1.Text;
self.ADOTable1.Open;
end;
end;
这样就行啦~~最后说一点,如果不希望别人更改combobox的文本内容,可以设置其Style属性为csDropDownList(下拉列表),这样就只能选而不能改了唷。
希望对您有帮助,如有问题可继续追问!
ADOConnection:首先数据库要连好喔(废话一下),就是设置好连接字符串,使得ADOConnection的connected属性为true;
ADOTabel:connection属性就为刚才的ADOConnection控件,通过它连到数据库;
DataSource:DataSet属性为刚才的ADOTabel控件;
DBgrid:DataSource属性为刚才的DataSource控件
然后就是您说的combobox和button啦,这两个不用改
接下来要稍微写点代码才能实现您说的功能~~
(1)在窗体创建事件onCreate或显示事件onShow触发之时,要将数据库的表名填写到combobox控件(可以参考下面的代码):
procedure TForm1.FormCreate(Sender: TObject);
begin
self.ADOConnection1.GetTableNames(self.ComboBox1.Items);
end;
(2)button单击事件onCLick(可参考下面的代码):
procedure TForm1.Button1Click(Sender: TObject);
begin
if self.ComboBox1.Text<>'' then begin
self.ADOTable1.Close;
self.ADOTable1.TableName:=self.ComboBox1.Text;
self.ADOTable1.Open;
end;
end;
这样就行啦~~最后说一点,如果不希望别人更改combobox的文本内容,可以设置其Style属性为csDropDownList(下拉列表),这样就只能选而不能改了唷。
希望对您有帮助,如有问题可继续追问!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询