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

pb如何实现局部刷新

2013-03-14 
pb怎么实现局部刷新怎么利用数据窗口,画一个表格,每一个表格内存在不同的信息,然后实时的检索这些表格的相

pb怎么实现局部刷新
怎么利用数据窗口,画一个表格,每一个表格内存在不同的信息,然后实时的检索这些表格的相关信息的变更,当有数据更新时就刷新表格。
比如机场的航班系统,一个屏幕显示了好多航班信息,每一条航班信息占据一行,整个屏幕可以显示出所有当前的所有航班,当某一条航班信息变更时,我就实时刷新,并且如果一条航班有多条信息更新时,可以依次显示并刷新。
[解决办法]
这种PB一般是数据窗口做的,重新取一下数据了
[解决办法]
要多写点代码判断哪一条记录更新了
然后调用
重新检索指定行
integer dwcontrol.ReselectRow ( long row ) 

Accesses the database to retrieve values for all columns that can be updated and refreshes all timestamp columns in a row in a DataWindow control or DataStore. The values from the database are redisplayed in the row.

[解决办法]
我觉得航空公司航班信息虽然是自动刷新某条,其实原理和手动一样的。
或者说具体是首先把当天所有航班都显示,然后把已完成航班过滤掉,最后根据每个航班填写/刷新数据。只不过数据是自动填写。那么。不知道楼主的目的是什么,如果楼主的信息是自动产生的而且知道具体哪行的哪列(或者自动计算出某行某列的话)。问题就好解决了,只要使用sql读取并通过 setitem()函数自动填写。
效果和航空公司的一样,不需要每次刷新/检索整个数据窗口的。

不知道能得到分数么?
[解决办法]
补充一下,上面的方法可以具体刷新到具体某一个格子而不需要retrieve()或者reselect(),我想象了一下,机场的似乎是每隔10秒刷新全部的,也就是他们等同于retrieve()。

热点排行