用了第一次提问时别人提供的代码,显出来了数据表username所有的字段内容,但是不能即时更新,比如我在pagecontrol组件的"员工数据"页面,向那个字段中添加了一些新数据,打开"设备数据"这个页面,这个combobox.item却不能更新,下面是上次提示时,别人写的打开"设备数据"页面时的代码procedure Tuser.PageControl1Change(Sender: TObject);
begin
adoquery.Active:=true;
adoquery.first;
while not adoquery.eof do
begin
combobox1.Items.Add(adoquery.fieldbyname('username').AsString);
adoquery.next;
end;
end;
这是"员工数据"页面,添加至数据表的代码procedure Tuser.Button1Click(Sender: TObject);
begin
adoquery1.Insert;
if (Trim(edit2.Text)='') or (Trim(edit3.Text)='')or (Trim(edit4.Text)='') or (Trim(edit5.Text)='') then
begin
showmessage('信息不完整!');
exit
end
else
ADOQuery1userID.Value:=edit2.text;
adoquery1username.value:=edit3.Text;
adoquery1sex.Value:=edit4.text;
adoquery1tel.Value:=edit5.Text;
edit2.Text:='';
edit3.text:='';
edit4.Text:='';
edit5.Text:='';
end;大家看看这是怎么回事呀?谢谢!
begin
adoquery.Active:=true;
adoquery.first;
while not adoquery.eof do
begin
combobox1.Items.Add(adoquery.fieldbyname('username').AsString);
adoquery.next;
end;
end;
这是"员工数据"页面,添加至数据表的代码procedure Tuser.Button1Click(Sender: TObject);
begin
adoquery1.Insert;
if (Trim(edit2.Text)='') or (Trim(edit3.Text)='')or (Trim(edit4.Text)='') or (Trim(edit5.Text)='') then
begin
showmessage('信息不完整!');
exit
end
else
ADOQuery1userID.Value:=edit2.text;
adoquery1username.value:=edit3.Text;
adoquery1sex.Value:=edit4.text;
adoquery1tel.Value:=edit5.Text;
edit2.Text:='';
edit3.text:='';
edit4.Text:='';
edit5.Text:='';
end;大家看看这是怎么回事呀?谢谢!
解决方案 »
- 邪邪邪,如何在内存中操作数据库?
- 如何调用C++写的DLL中的回调函数(急)
- 不难的问题,但小的初学不懂..先谢了,
- 关于TQRGRoup中TQRExpr的合计表达式的用法
- DBGrid数据显示问题,在钱等急急
- 关于treeview的问题,大家看看我的代码,请进
- 我有一个函数里面有一句Reset(DatTextFile);老实报错,能帮我看看为什么吗
- 这段代码我不懂,能帮我详细解释吗?
- 我没有可用分数了,请帮主给我一点分数吧.谢谢
- 下载了文件监控控件“fisFileNotification”,希望可以提供相关教程
- delphi 如何随机获取一个未占用的端口?
- 有没有朋友可以将下面重复性的过程做成一个函数来调用?
1.数据控件
2.重新遍历数据集
3.在combox中添加记录时,保存记录的主键值,修改记录后,在combox中定位到主键值为所修改记录主键值的item,然后修改内容
4.如果你是update更新数据的话,那你就重新遍历吧
begin
combobox1.clear;
adoquery.Active:=true;
adoquery.first;
while not adoquery.eof do
begin
combobox1.Items.Add(adoquery.fieldbyname('username').AsString);
adoquery.next;
end;
end;procedure Tuser.PageControl1Change(Sender: TObject);
begin
AddData;
end;
procedure Tuser.Button1Click(Sender: TObject);
begin
adoquery1.Insert;
if (Trim(edit2.Text)='') or (Trim(edit3.Text)='')or (Trim(edit4.Text)='') or (Trim(edit5.Text)='') then
begin
showmessage('信息不完整!');
exit
end
else
ADOQuery1userID.Value:=edit2.text;
adoquery1username.value:=edit3.Text;
adoquery1sex.Value:=edit4.text;
adoquery1tel.Value:=edit5.Text;
edit2.Text:='';
edit3.text:='';
edit4.Text:='';
edit5.Text:=''; AddData;// 這裏要重新加載一次。
end;
begin
combobox1.clear;
adoquery.Active:=false;
adoquery.active := True;
adoquery.requery;
adoquery.first;
while not adoquery.eof do
begin
combobox1.Items.Add(adoquery.fieldbyname('username').AsString);
adoquery.next;
end;
end;procedure Tuser.PageControl1Change(Sender: TObject);
begin
AddData;
end;
procedure Tuser.Button1Click(Sender: TObject);
begin
adoquery1.Insert;
if (Trim(edit2.Text)='') or (Trim(edit3.Text)='')or (Trim(edit4.Text)='') or (Trim(edit5.Text)='') then
begin
showmessage('信息不完整!');
exit
end
else
ADOQuery1userID.Value:=edit2.text;
adoquery1username.value:=edit3.Text;
adoquery1sex.Value:=edit4.text;
adoquery1tel.Value:=edit5.Text;
edit2.Text:='';
edit3.text:='';
edit4.Text:='';
edit5.Text:=''; AddData;// 這裏要重新加載一次。
end;