2
我在RAM中有一个clientdataset
没有数据库,它维护网络中活动节点的列表。
节点连续回报确认它们是活着的,从而保持数据集更新。
数据集显示在dbgrid
中。如何自动删除尚未更新的clientdataset记录
当节点停止报告状态时,会在几秒钟不活动后从数据库中删除。
我通过更新字段时更新超时字段来做到这一点。
每一秒我遍历数据集删除过时的记录。
这可以工作,但当OnDrawColumnCell
刷新单线网格以自定义列颜色时,网格有时会闪烁。我打电话DisableControls
/EnableControls
,但似乎有一个小的延迟,直到OnDrawCell
重绘网格导致闪烁。
如果我禁用迭代删除过时的记录,闪烁停止。
有没有更好的方法来做到这一点?
你试过这个了吗? – MartynA
否。闪烁在重新启动后消失。我不知道为什么。 – AndersJ
谢谢。经历了写答案的麻烦,很高兴知道结果。 – MartynA