【发布时间】:2010-10-13 09:51:37
【问题描述】:
我正在开发一个自定义组件,并且我想添加一个已发布的属性,该属性将是一个 TQuery 数组(它应该在对象检查器中可见)。主要功能是将组件放在表单上,然后直观地选择出现在同一表单或任何其他项目表单上的查询。
这可行吗?从我到现在所见,您只能以编程方式使用这样的数组属性...
更新
首先,感谢您的回答 Alex!
其次,问题是我必须修改别人创建的旧应用程序,所以我想尽可能少地处理它(实际上我需要“修复”第二个应用程序,我被告知它是两倍大的)。现在了解详细信息:该应用程序有大约 15 种用于各种数据库操作的表格。正如您可以想象的那样,每个表单都有 2-3 个 TQuery 对象。问题是用户必须通过数据库进行身份验证才能执行查询,因此他知道数据库用户和密码,这是一个安全流程。
为了避免这种情况,引入了中间系统。一个连接并对其进行身份验证并请求必要的数据库数据:用户、密码和数据库名称。我的工作是使用这个系统并自动登录到数据库。访问此中间系统的必要凭据不被视为安全流程,因此我将从依赖于其部署环境的 inifile 中读取它们:测试、预生产、生产。
所以我在表单上放置了一个 TDatabase 组件,将其 LoginPrompt 属性设置为 FALSE。然而,棘手的部分是在执行之前将每个 TQuery 调整为每个环境的不同数据库名称..
不知道我是否说清楚了,但这是我想出的最简单的解释
谢谢, G
【问题讨论】:
-
为什么要数组?如果您在设计时需要访问,集合可以让您的生活变得更轻松,因为对象检查器中对它们提供了标准支持。
-
您能否提供一个指向此类示例的链接?谢谢,G
-
vcl中有例子。 TListView 的列; THeaderControl 的部分; TCategoryButtons 的类别; TButtonGroup 的项目,仅举几例。
-
是的,找到了,非常感谢,G
标签: delphi delphi-7 custom-component