如何对同一个记录集同时进行两种互补的过滤操作(100分)(100分)

  • 主题发起人 主题发起人 volan
  • 开始时间 开始时间
God,总算联上来了,

To sherman:
InfoPower 4.o for Delphi4找到了。但是我在其中没有找到Grid Filter(
它的TwwDBGrid,TwwQuery,TwwDataSet都检查过了),能否提供使用范例?

试通就给分哦!


 
你看了INFOPOWER的DEMO程序了吗,里面就有
 
好久都没上网了,

sherman,我看了程序,都没有发现有关GridFilter的描述。

能否把源程序拷给我


多谢
 
不用那么复杂吧?试试这个==》
建两个Tquery,两个Datasource,两个dbgrid,
dbgrid1->datasource1->query1
dbgrid2->datasource2->query2

query1.sql='select * from table1 where flag=true' //flag是标志位
query2.sql='select * from table1 where flag=false' //flag是标志位
query1(2).active:=true;

然后如更改dbgrid1的任意一记录flag为false时,dbgrid1.refresh,
dbgrid2.refresh,此一记录显示在DBGRID2中。

如不行,query1.refresh, query2.refresh一定行!

:-)

 
refresh是重新获取记录,
我就是不想重新获取记录的改变而
Query.Close;
Query.Open;

因为我的数据库记录太多,每次修改一笔记录而
进行整个记录的刷新太费时间,而且对网络合理
利用也不得。
 
那就只好不用DBGRID而用GRID了,后台刷新数据库,前台用两个可变数组保存
记录内容。改变GRID1标志的同时先更新数据库,如果成功则删除GRID1这行,
在ARRAY1中删除此记录,在ARRAY2中添加此记录,GRID2中添加此记录,
这样就满足你的要求了吧。 :-)
 
分也给了,但问题还在。
我还是倾向于“Grid Filter”方式,
但不知有没有办法。

如果提供支持Grid Filter的组件及例子源代码,我可以再给100分
 
后退
顶部