用了第一次提问时别人提供的代码,显出来了数据表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;大家看看这是怎么回事呀?谢谢!
解决方案 »
- 在用Ehlib4.2.16时,会什么有时会报内存错误?有时又不会。。
- 请问如何能让当前系统中的某个软件隐身看不到呢?也就是说让这个软件的visible属性为false;
- 如何让服务程序不退出?
- 在pagecontrol的tabsheet中,如何自动换到另外一个tabsheet
- 【板务醒目】辞去 Windows SDK/API 板斑竹职务 6/10【散分醒目】
- 用copymemory复制string的问题
- 关于使用 RegisterServiceProcess API 函数问题
- 我用clientdataset去修改一个记录,为什么修改不成功呢?
- 怎样在delphi中调用后缀名为txt的文件?或者是chm文件
- 用TOleContainer打开WORD 如何去掉菜单栏和工具栏..
- 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;