我经常遇到这个,我只是在寻找最佳实践/方法.我有一个包含数据库/数据模块的应用程序,并且想要在启动时启动数据库/数据集,而在设计时将"运行时活动"设置为true(数据库位置不同).当应用程序启动时,还运行Web"检查更新"例程.
给定TForm事件序列,以及各种试错的结果,我目前正在使用这种方法:
我使用在主窗体中设置的"Globals"记录来存储所有全局变量,有一个名为Globals.AppInitialized(boolean)的元素,并在主窗体的Initialization部分将其设置为False.
在主窗体的OnShow事件中(所有窗体都是由那时创建的),我测试了Globals.AppInitialized; 如果它是假的,我运行我的"初始化"的东西,然后通过设置Globals.AppInitialized:= True完成.
这看起来效果很好,但这是最好的方法吗?寻找别人的经验,想法和意见的见解.TIA ..
在Delphi 2009中,我有一个带有MyProcedure过程的表单,该过程写入表单上的标签.表单使用带有ClientDataSet的DataModule.当触发ClientDataSet的AfterScroll事件时,应执行MyProcedure.为了避免循环引用,更重要的是,因为我希望DataModule可以重用,所以DataModule不应该引用这个特定的Form.
简而言之,我希望我可以从我的表单访问AfterScroll事件.我可以从表单中挂接DataModule上的Afterscroll事件吗?我认为它应该是可能的,但我不记得该怎么做了.提前致谢.
我非常喜欢Delphi 2010中的Code Folding功能.但是,每次启动Delphi 2010并重新打开我的项目时,我明显折叠的代码不再折叠.有没有办法保持折叠的代码,当你关闭IDE折叠?
一些背景:我想开发一个桌面应用程序,将SQL数据库作为存储.一次只有一个用户连接到数据库.
为了使维护更容易,我想从Busniss Logic中分离GUI.因此,我想为每个Dialog使用DataModule(实现BL的地方).
我的问题:插入TClientDataset组件的适当位置在哪里?直接在Dialog或DataModule中?
如何在设计模式(组件编写)中获取所有创建的对象(TDataModule类型)?
当我试图继承TDataModule时,Delphi将后代类视为一种形式,为它们提供字体和客户端属性等属性.(运行时"属性不存在"异常)
TixDataModule = class(TDataModule);
TDM = class(TixDataModule)
end;
Run Code Online (Sandbox Code Playgroud)
我能做些什么才能让它发挥作用?
当我将鼠标悬停在Uses子句中的UnitNames上时,会弹出一个窗口,显示UnitName命名空间.例如,当我鼠标悬停在SysUtils单元上时,我在弹出窗口中看到了SysUtils Namspace.如果我右键单击SysUtils并选择Cursor上的Open File,则会在IDE中打开源代码.
如果我右键单击并选择"在光标上打开文件",则会显示"打开文件"对话框.
为什么所有单元不仅仅是打开IDE?
我刚刚开始使用ActionMainMenuBar和ActionManager,我想找出这个组件引入的Delphi版本是什么?我在哪里可以找到这类信息?
I had an issue where a file kept deleting on startup and I couldn't track down the code responsible. I wound up adding Vcl.Dialogs to all the units and creating an initialization section that looked like this:
initialization
begin
ShowMessage('Inside [Unit Name Here]');
end;
Run Code Online (Sandbox Code Playgroud)
This was quite a pain. Is there an easy way to generate a list of forms/units in the order in which they fire off?
UPDATE: 2019-08-01 (Helpful MAP links)
Here are two links that …
我使用Delphi,去年我从D5 Enterprise升级到Delphi 2010 Profession.偶尔我会收到电子邮件,询问我什么时候会在Mac上运行.
是否有一个版本的Delphi可以创建在Mac上运行的软件?
如果没有,你知道Embarcadero是否计划在不久的将来推出一个这样做的版本?
delphi ×10
datamodule ×5
delphi-2010 ×4
code-folding ×1
delphi-units ×1
forms ×1
history ×1
ide ×1
macos ×1