在我的应用程序中,我有不同的表单使用相同的数据源(因此查询也是相同的),在公共数据模块中定义.问题是,有没有办法知道我打开一个特定的查询多少次?通过能够做到这一点,我可以避免关闭该查询而不关闭它"在其他地方".
编辑:重要的是要提到我使用的是Delphi3,它不是单个查询,而是几个.
我们的想法是使用TDataSource 的DataLinks属性.
但是,由于它受到保护,您必须获得访问权限.一个常见的技巧是创建一个假的后代只是为了铸造:
type
TDataSourceHack = class(TDataSource);
Run Code Online (Sandbox Code Playgroud)
然后你使用它像:
IsUsed := TDataSourceHack(DataSource1).DataLinks.Count > 0;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1416 次 |
| 最近记录: |