程序用的是远程多层数据库,用的是DCOM联接,
grid用的是EhLib控件中的grideh控件,为了上滚轮滚动选定记录不动使用了内存控件memtableeh.
在这里发现一个问题,用了memtableeh后数据显示不全,只有点击scrollbar下箭关按钮才能一步步显示,直到于部显示。clientdataset 中的PacketRecords:=-1 //没有设置数据缓冲clietdataset属性不变,在grideh中如果不用memtableeh控件,直接联接,就能一次显示全部数据,用了memtableeh后就会出现数据缓冲的现象,我现在要使用memtableeh,但不需要数据缓冲,应该怎么作。
grid用的是EhLib控件中的grideh控件,为了上滚轮滚动选定记录不动使用了内存控件memtableeh.
在这里发现一个问题,用了memtableeh后数据显示不全,只有点击scrollbar下箭关按钮才能一步步显示,直到于部显示。clientdataset 中的PacketRecords:=-1 //没有设置数据缓冲clietdataset属性不变,在grideh中如果不用memtableeh控件,直接联接,就能一次显示全部数据,用了memtableeh后就会出现数据缓冲的现象,我现在要使用memtableeh,但不需要数据缓冲,应该怎么作。
研究了一整天,终于搞明白了。在memtableeh中有个属性memtableeh1.FetchAllOnOpen
为true时,将所有数据取到内存中。 大概试用了一下,发现这个属性与clientdataset的packetrecords有些冲突。
如果设置了fetchallonopen为true后,clientdataset中的packetrecords就不起作用了。