delphi ListView 更新写入

有什么方法只更新ListView其中几列的数据,如序号帐号在线/离线时间011离线2010/10/2220:01:21122在线2010/10/2220:02:00233... 有什么方法只更新ListView 其中几列的数据,如
序号 帐号 在线/离线 时间
0 11 离线 2010/10/22 20:01:21
1 22 在线 2010/10/22 20:02:00
2 33 在线 2010/10/22 20:01:00
3 44 离线 2010/10/22 20:00:00

以上内容是通过数据库得到的,Timer1事件3秒查询一次数据,现在的问题是
只更新 在线/离线 时间。帐号不需要更新,Delphi 代理如何解决?
展开
 我来答
HJ_3000
2010-11-28 · TA获得超过563个赞
知道小有建树答主
回答量:1264
采纳率:78%
帮助的人:48.5万
展开全部
Procedure TForm1.Timer1Timer(Sender: TObject);
Var
I: Integer;
ID: String; //帐号
Begin
Timer1.Enabled := False;
Try
With ListView1, ADOQuery1 Do
Begin
Open; //打开刷新的数据
For I := 0 To Items.Count - 1 Do
Begin
ID := Trim(Items[I].SubItems[0]); //帐号,关键字

If ADOQuery1.Locate('帐号', ID, []) Then //定位到数据集,更新
Begin
Items[I].SubItems[1] := ADOQuery1.FieldByName('状态').AsString;
Items[I].SubItems[2] := ADOQuery1.FieldByName('时间').AsString;
End;
End;
Close;
End;
Finally
Timer1.Enabled := True;
End;
End;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式