问题标签 [datamodule]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 为什么打开数据模块时组件面板会发生变化?
我在 Windows 7 x64 上安装了 Delphi 7。事情进展顺利,但现在,当我打开或创建一个数据模块时,它会弄乱组件面板。搞砸了,我的意思是它似乎打乱了哪些选项卡组件,或者完全隐藏它们。这真是不寻常的行为。
卸载并重新安装 Delphi 7 没有帮助。
c++ - 删除 TDataModule 但保持 TADOConnection 不变
我有一个与一些共享 TADOConnection 的 TDataModules 的库。我在某些应用程序中创建和删除数据模块。
当我删除数据模块时,我收到 EAccessViolation 错误。我认为这是因为数据模块想要删除共享的 TADOConnection。
我尝试在调用析构函数时将 tdatamodule->tbquery->Connection 属性设置为 NULL,但没有任何运气。
为什么我认为错误存在于 TADOConnection 中?因为当我在没有库的情况下构建应用程序时,我可以毫无问题地创建和删除数据模块。当我使用具有自己连接的数据模块创建一个库时,我也没有问题。
有什么帮助吗?提前致谢!
错误: http: //oi60.tinypic.com/noyc6x.jpg
调用栈: http: //oi61.tinypic.com/sgljx5.jpg
delphi - Delphi 组件从新数据模块的组件面板中消失
我的组件的声明是:
TActivex组件:
当我在任何 Delphi 版本中打开一个新的 DataModule 时,该组件将从组件面板中消失。
我尝试更改 Delphi XE2 中的 ClassGroup,但这不起作用。
delphi - 有效地访问具有相同数据对象名称的两个 Delphi 数据模块中的任何一个
我有一个丑陋的情况,我在 Delphi 应用程序中需要两个数据模块(TDMA,TDMB)。每个数据模块具有相同的数据对象名称(查询、表等),但来自不同的组件集(TZQuery、TADOQuery)。我需要这个,因为我想支持多个数据库,但我的组件套件并不支持所有数据库。我需要访问哪个数据模块由 DBFlag 布尔变量确定。除了为每个数据访问提供几乎相同的代码段之外,还有更有效的方法吗?
如果我可以根据 DBFlag 将像 DMG 这样的全局数据模块变量设置为 DMA 或 DMB,那么我的代码可以引用 DMG 而不是 DMA 或 DMB。这将是理想的,并且只需要很少的代码修改,但据我所知是不可能的。
delphi - 没有 .Create 但没有问题的 TDataModule 后代“创建”?
我突然注意到TDataModuleTestExchange(nil)
我们的代码库中有一个“构造函数调用”:
所以代替TDataModuleTestExchange.**Create**(nil)
这个工作就好了!
没有编译器错误,没有运行时问题。怎么来的?
delphi - 从另一个表单访问 DataModule 的事件(delphi 设计时)
我想知道是否有任何方法可以将组件的事件(As TButton.OnClick
)链接到数据模块中定义的过程(在设计时)。目前,我在运行时这样做:
目标是在 Object Inspector 窗口的下拉列表中获得建议的 MyDataModule.MyOnClickEvent。提前感谢所有将分享他们的知识的人:D
注意1: 这是一个类似的问题,但没有关于如何在设计时完成相同任务的信息: Access an event on a DataModule from another Form
注意2: 我发现的唯一方法是在父表单上定义所有事件,但我希望有一个更清洁的解决方案
delphi - 我什么时候需要释放应用程序创建的数据模块?
我的代码如下:
如果我没有像在代码中那样显式释放 DM,我会收到访问冲突异常,但在另一个应用程序中,代码是这样的:
我不必释放 DM,也没有任何异常。这是为什么?
delphi - 是否可以在没有 .DFM 的情况下使用数据模块?
我在一个单独的数据模块中卸载了所有 ADO 引擎盖,因此一个模块可以被多个应用程序引用。我所有的应用程序基本上只需要两个工作方法来访问数据:
AdoQuery
以TADODataSet
.
AdoExecute
执行简单的更新/删除查询而不获取任何结果。
这是类结构:
然后我在类方法中添加了两个公开的包装器。我用它来避免调用中的长类引用:
以上是我在所有表单中调用的工作函数。
AdoConnect
在DataModuleCreate
事件中只运行一次。TDatModule 派生自TPersistent
,它允许在整个运行时持久化连接的单个实例。
到目前为止,唯一让我烦恼的是一个无用的 .DFM,我根本不需要它。
有没有办法摆脱它?
delphi - 无法对打开/关闭的数据集执行此操作?
大家好,我写了一个函数,它必须检查给函数的 ID iID
,然后输出找到它的成员的名称,否则它必须输出它没有找到
调用此函数时,另一个表处于活动状态,因此它必须将表更改为Members
(以搜索 ID),然后再返回(我有多个表)
但问题是每次我调用此函数时都会收到一条错误消息,提示“无法在打开的数据集上执行此操作”
如果我在运行函数之前关闭数据集,我会得到“无法在关闭的数据集上执行此操作”
我知道当我尝试访问表名或更改它时会发生错误(当这 3 行被注释掉时,该函数不会给出错误)
我不知道如何使这项工作任何帮助将不胜感激