Delphi

Delphi 2010 / Delphi XE的Freeware ZIP组件?

您是否知道与Delphi 2010 或 XE 兼容的任何免费组件来管理ZIP存档(实际上只读取存档内容并提取所需的文件)? 请勿尝试betas。 我从ComponentAce考虑过ZipForge,但仅供个人使用。不需要软件分发。 解决方案 您可以从2010年获得TurboPower Abbrevia: http://tpabbrevia.sourceforge.net/ ..
发布时间:2017-04-28 20:06:42 Delphi

我在哪里定义使用{$ IFDEF}测试的符号?

当我在代码中使用Delphi指令,如: {$ IFDEF something} 。 。 。 {$ ENDIF} 我在哪里可以在项目中分配单词“something”我在某些地方尝试过项目选项,但没有起作用。猜测我没有找到正确的。 解决方案 它位于项目下的条件定义 |选项,在D2010上看起来像这样: ..
发布时间:2017-04-28 20:06:23 Delphi

Delphi预定义的环境变量

任何人都可以告诉我哪里可以找到RAD Studio中可用的“伪”环境变量的列表?像$(Platform),$(Config)等等。具体来说,我想要一个给我的RTL版本,所以我可以把我的编译单元(* .dcu)到正确的目录,即。 D15 for XE,D16 for XE2等。 我希望有一个与“RTLVersion”编译器条件定义相对应,但$(RTLVersion )不起作用。 解决方案 ..
发布时间:2017-04-28 20:06:10 Delphi

ShellExecute执行前等待?

我有一个有希望的快速问题:有可能延迟执行ShellExecute一点点吗? 我有一个自动更新的应用程序。它下载所有必要的文件等后,将当前文件重命名为* .OLD和新的。足够简单但是,我需要删除那些.OLD文件。这个'清理'过程在MainForm.OnActivate中执行(检查是否是第一个activate proc)。但这显然发生得太快了(我从DeleteFile得到False)。这是程序: ..
发布时间:2017-04-28 20:05:22 Delphi

如何释放记录中的对象?

我想,这里有一个棘手的情况。我需要能够释放一个记录字段的对象。我通常会在析构函数中编写清理代码,如果它是一个类。但是由于记录类型不能引入“析构函数”,所以可以调用 TObject(Field).Free; ? 我预测会有两种类型的使用: 用新的替换记录。 我认为这个用法很容易实现。因为记录是值类型,所以它们被分配复制,我可以重载分配操作符并释放旧记录所拥有的对象。 (编辑: ..
发布时间:2017-04-28 20:05:09 Delphi

当D2010中的鼠标不移动时,OnMouseMove为什么会反复触发?

我正在移植到D2010的Delphi 5应用程序,我有一个问题。在一个窗体上是一个带有OnMouseMove事件的TImage组件,每当鼠标移动到图像上时,它应该更新一个标签。这在原始应用程序中工作得很好,但是当鼠标在图像上方时,OnMouseMove事件会不断触发,无论是否移动,导致标签闪烁。 有人知道是什么原因造成的,如何解决? 解决方案 我的心灵调试感觉告诉我你在Windows ..
发布时间:2017-04-28 20:04:51 Delphi

动态添加页面控件并嵌入表单?

我正在研究一个由页面控件组成的模块。默认情况下,此页面控件( TPageControl )不应该有任何选项卡( TTabSheet ),但是在初始化时,它应该动态地插入这些页面并在其中嵌入一个表单。 问题在于知道如何将页签插入到页面控件中。如何创建这个?一旦它被创建,以及每个表单中的表单,我如何迭代它们来销毁表单? 解决方案 1。如何动态创建选项卡? procedure TF ..
发布时间:2017-04-28 20:04:16 Delphi

Delphi 2007 - 如何避免使用\history文件夹?

较新的Delphi版本(包括我使用的Delphi 2007)具有文件历史记录功能的构建,可让您从IDE中恢复为旧文件。这很好,但我已经有源代码管理。是否可以禁用此功能? 我问,因为IDE会自动创建一个\history文件夹,其中包含所有文件的旧版本,这会让我感到烦恼。 / p> 解决方案 工具\选项\编辑器选项\ 取消选中“创建备份文件” ;) ..
发布时间:2017-04-28 20:04:04 Delphi

在Delphi XE4中是否可以更改应用程序的短标题而不使其与Project dpr名称相同?

我正在写我的第一个delphi驱动的iPhone应用程序。我已经创建了它,但是我希望它被命名为除了.dpr文件的名称之外的其他东西,因为dpr文件不能包含空格,例如,EXE名称并不总是与人类可读的名称相同,可以分配一个App 在Windows Delphi应用程序中,EXE命名与.dpr文件相同,因为您的快捷方式中的英文名称或桌面上的本地化名称或者在任何其他非英语位置的开始菜单中不一定与您的 ..
发布时间:2017-04-28 20:03:52 Delphi

使用VCL Styles启用应用程序和显示缩放的Windows标题栏中的可视化错误

目前,我正在测试支持VCL样式的应用程序的各个方面。 我注意到,Windows缩放比默认的96 dpi / 100%更高, VCL表单的图标和标题栏文本的大小太大,而且两者都要关闭在一起,请参见附带的截图。对于200%或250%的更高的缩放比例(例如在4K显示屏和Windows 10上使用),这一点尤其如此,但即使是144 dpi / 150%的缩放比例,问题已经可见。 对于RAD ..
发布时间:2017-04-28 20:03:40 Delphi

我需要避免尝试更新连接到TSQLQuery的Delphi TClientDataset中的非物理字段

Precis:我的代码正在尝试更新Delphi XE中的非物理字段 TClientDataset ,(连接到一个 TSQLQuery 其 SQL 属性集)是由运行时打开命令创建的。 我有一个 TClientDataset 连接到 TDatasetProvider 连接到 TSQLQuery 连接到 TSQLConnection 。这些对象中的前3个被封装在一个库中的几个类中,我在多个项目的许 ..
发布时间:2017-04-28 20:03:28 Delphi

Delphi 2010:TRTTIConstructor发生了什么事?

我有两个问题(其中至少有一个是在D2010和动态实例中讨论RTTI) 我在读什么似乎是Barry Kelly的大会谈话的烙印,以及在p。 13看起来很有趣的东西: TRTTIConstructor.Invoke 。在相邻的项目符号点中,可以找到“动态构造实例而不需要虚拟构造函数和元类”。这似乎是一个伟大的功能(正是我需要的,btw)!但是,当我查看D2010文档(ms-help://emba ..
发布时间:2017-04-28 20:03:16 Delphi

如何判断Delphi变体是否为空字符串?

我正在处理D2007的最后一个遗留应用程序,将其迁移到Delphi XE。 在此期间,变体已经发生了很大变化。 这一行代码: $ b $如果(VarType(Value)= varString)和(Value ='')然后 退出,那么b 返回True并在D2007中退出,但不在Delphi XE中。 我已将其更改为: 如果VarIsStr(V ..
发布时间:2017-04-28 20:03:04 Delphi

如何清除运行中的参数字段?>参数菜单?

我正在使用CodeGear RAD Studio IDE。 为了使用命令行参数测试我的应用程序,我使用了几次“参数”字段“运行 - >参数”菜单。 但是,每当我提供一个新值时,都不能从“下拉框”中删除。 我需要清除此字段(清除所有值),因为在某些情况下,有些信息我不想与偶尔使用我的机器的人共享。 如何清理此字段? 解决方案 Delphi 2007参数列表存储在Win ..
发布时间:2017-04-28 20:02:40 Delphi

如何添加在OSX上按预期工作的菜单项分隔符?

在 Windows 平台上,使用 VCL ,当我们要在菜单中添加分隔符时,我们添加一个 TMenuItem 与 Caption:=' - '; 使用 FireMonkey ,我们添加一个 TMenuItem 与 Text:=' - '; 它在Windows平台上的预期工作,具有Text =' - '的项目显示为分隔符。 但是当我在 OSX 上运行相同的应用程序时,我有减号可见.. ..
发布时间:2017-04-28 20:02:27 Delphi

链接到由Windows创建的游戏,当delphi项目创建具有特定名称的exes

我有一个名为VR的Delphi项目,生成一个名为VR.exe的可执行文件。令我失望的是,我发现Windows(我正在运行Window 7 64位Ultimate)已经添加了链接到开始菜单和游戏下:Search&救援:越南MED + EVAC。链接的图标是默认的delphi应用程序图标。 有一些研究,我发现这个帖子: http://social.technet.microsoft.com ..
发布时间:2017-04-28 20:02:03 Delphi

Delphi中的非typed / typeless参数

什么类型的参数没有类型,如类TStringStream: 函数Read(var Buffer; Count:Longint):朗廷覆盖 Buffer参数的类型是什么(指针类型是什么?) 解决方案 几年前我写了一篇关于这个主题的文章: 什么是无类型参数? 在几种情况下使用非标准参数;您所要求的 TStream.Read 方法与我写 ..
发布时间:2017-04-28 20:01:39 Delphi

Delphi - 为什么是TObject.InitInstance public?

我对Delphi有点新鲜,而这个问题只是我好奇。 (我也只是试图使用它只是为了发现我不应该。) 如果您查看 TObject.InitInstance 它告诉你不要使用它,除非你重写 NewInstance 。该方法也是公开的。为什么不保护用户永远不会调用它? 解决方案 在1992年年中开始,这个问题可能有几个答案。如果您在Delphi 1中查看TObject的原始声明,则TObjec ..
发布时间:2017-04-28 20:01:13 Delphi