Delphi 模拟单击DBGrid
我做了一些搜索,但什么也没找到 使用D5、Zeos和SQLite 我有一个DBGrid和一个经过筛选的数据集tblBricks 在DBGrid1.OnCellClick事件中,我Delphi 模拟单击DBGrid,delphi,sqlite,delphi-5,zeos,Delphi,Sqlite,Delphi 5,Zeos,我做了一些搜索,但什么也没找到 使用D5、Zeos和SQLite 我有一个DBGrid和一个经过筛选的数据集tblBricks 在DBGrid1.OnCellClick事件中,我 tblBricks.Refresh; 在运行时,我可以使用 tblBricks.Locate('Color','Red',[loCaseInsensitive]); frmMain.DBGridCellClick(Columns[0]); 它聚焦于正确的行和列 问题是,我第一次运行这个应用程序时,当数据集打开时,它
tblBricks.Refresh;
在运行时,我可以使用
tblBricks.Locate('Color','Red',[loCaseInsensitive]);
frmMain.DBGridCellClick(Columns[0]);
它聚焦于正确的行和列
问题是,我第一次运行这个应用程序时,当数据集打开时,它被设置为Filtered:=True;但显示器尚未显示为已过滤
如果单击DBGrid中已聚焦的单元格,它会突然过滤并正确显示结果
我如何模拟对单元格的单击,以便第一次通过单元格时强制进行筛选,或者强制对数据集进行筛选
不确定这是D5、Zeos、SQLite的特性还是它们的组合
谢谢您现在如何定义过滤器?什么时候将筛选属性设置为True?我在这里的回答可能会有所帮助:哈!哈哈。非常有趣@Ken,它已经设置好了,在第一次完成之后,它工作得很好。我可以转到另一个窗体,在那里更改数据集光标,然后在OnClose中重置它,过滤将正确地显示在主窗体上。这只是在我第一次运行应用程序时发生的。@Jach,过滤器的定义很好,因为它在所有其他时间都有效。我尝试在tblBricks.Active:=True和相同的东西之前和之后设置True。正如我向Ken提到的,这只是我第一次运行应用程序。除此之外,一切正常。我只是想尝试一下强制点击聚焦单元格,看看这是否解决了问题。如果蛮力奏效,我很高兴如果是这种情况,您应该将其放入数据集的AfterOpen事件中。