首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

咨询根据数据库表名动态更新下拉框的函数的参数传送有关问题

2012-03-29 
咨询根据数据库表名动态更新下拉框的函数的参数传送问题我的表单有5个下拉框,每个下拉框都从数据库表填充

咨询根据数据库表名动态更新下拉框的函数的参数传送问题
我的表单有5个下拉框,每个下拉框都从数据库表填充其ITEMS,我想写一个函数来实现,可是点击F9按钮运行时,在xla.Items.Add(fields[0].asstring);就出错了,提示:Record,object or class tupe required,请问,这个函数应怎么修改:

procedure TForm3.get_table(table_name: string; xia_la_kuan:string);
var
  ta:string;
  xla:string;
begin
  ta:=table_name;
  xla:=xia_la_kuan;
  adoquery1.Connection:=datamodule2.to_xd;
  with adoquery1 do
  Close;
  form3.ADOQuery1.sql.Clear;
  form3.ADOQuery1.sql.Add('SELECT * FROM :ta WHERE state=''F0A''');
  form3.ADOQuery1.open;
  form3.ADOQuery1.first;
  while not eof do
  begin
  xla.Items.Add(fields[0].asstring);
  next;
  end;
  xla.itemindex:=0;
  end;
end;

然后,在表单的OnCreate事件里加上下面语句
get_table('my_table_name1','xia_la_kuan_name1');
get_table('my_table_name2','xia_la_kuan_name2');
get_table('my_table_name3','xia_la_kuan_name3');
get_table('my_table_name4','xia_la_kuan_name4');
get_table('my_table_name5','xia_la_kuan_name5');

[解决办法]
with adoquery1 do 中的 AdoQuery1 和 form3.ADOQuery1 是否同一个?

xla.Items.Add(fields[0].asstring); xla是字符串类型,怎么能xla.Items.Add(fields[0].asstring)?
[解决办法]
form3.ADOQuery1.sql.Add('SELECT * FROM :ta WHERE state=''F0A''');
:ta这个参数没有指明是什么。

热点排行