56得票4回答
链接失败 [ilink32错误] 致命: 无法打开文件'TYPES.OBJ'

我一直在更新使用C++ Builder 2010构建的旧遗留项目的代码,以便使用C++ Builder 10 Seattle编译。 我大部分时间都需要更改路径,将许多dupIgnore更改为TDuplicates :: dupIgnore ,重新导入一些组件,例如MSXML和MSMQ等。 首...

54得票3回答
刷新、更新和重绘有什么区别?

我不知道哪种方法最适合我。它们都可以对我起作用。有人知道“Refresh”、“Update”和“Repaint”之间的区别吗?

36得票5回答
wsMaximized窗体未最大化显示

将一个窗体的WindowState属性设置为wsMaximized有时会导致该窗体不能最大化,而出现下面的情况: 长期存在的问题:这是我在2003年首次在Borland新闻组中提出的问题: 解决WindowState = wsMaximized的方法? 然后在2006年再次提出:...

25得票1回答
Delphi XE2 VCL样式,更新标题会导致其他控件无效化

在使用VCL样式时发现一个小问题:当您更新窗体标题时,在同一个过程中先前重绘的其他控件不会重新绘制,因此您必须调用Repaint,浪费宝贵的时间进行重新绘制。 例如:(手动设置项目选项/VCL样式)unit Unit11; interface uses Winapi.Windows,...

25得票6回答
Delphi XE2:在VCL应用程序中实例化FireMonkey表单是否可能?

在 Delphi XE2 之前,我们只能使用 VCL 创建 GUI 应用程序。Delphi XE2 指出: 注意:FireMonkey (FMX) 和 Visual Component Library (VCL) 不兼容,并且不能在同一项目或应用程序中使用。也就是说,应用程序必须完全使...

25得票8回答
Delphi VCL组件的“Tag”属性的目的是什么?

Delphi VCL组件的“标签”属性是否有特定用途?我在Google上搜到一些例子,例如将其用作“颜色”属性或使用该值作为指针地址,但是使用它是否属于“良好实践”,还是被视为“不良实践”会将程序逻辑与UI绑定? “标签”属性可以用于存储任意数据,并且不会影响组件在UI上的显示。它通常用于在...

21得票1回答
如何让悬停在最小化、最大化和关闭按钮上时的行为变得更好?

在 Delphi 应用程序中,当您将鼠标悬停在边框图标上时,例如: 最小化 最大化 还原 它的行为不正确: 与一个表现正确的应用程序相比: 复现步骤 点击 文件(File), 新建(New), VCL表单应用 - Delphi 点击 运行 (F9) 将鼠标悬停在最小化、...

20得票4回答
加载Jpg/Gif/Bitmap并转换为Bitmap

我需要从一个XML文件中加载一张图片,但是在XML文件中没有关于这个图片是JPG/GIF/BMP的信息。加载完图片后,我需要将其转换为位图。 有人知道如何在不知道实际文件格式的情况下将图片转换为位图吗?我正在使用Delphi 2007/2009。 谢谢。

18得票2回答
如何在 Delphi Seattle 中处理运行时 DPI 更改后的菜单缩放

当为表单类添加支持运行时DPI切换的功能时,没有考虑到基本UI元素,例如菜单。 菜单绘制基本上是有问题的,因为它依赖于Screen.MenuFont,这是一种系统范围的指标,而不是特定于监视器的。 因此,虽然表单本身可以相对简单地正确缩放,但在其上显示的菜单仅在该缩放恰好与加载到Screen...

17得票3回答
TStringGrid - 有没有简单的方法来获取“当前/选择”的行?

我可以走一条迂回曲折的路,遍历每一行,从CellRect(col, row)获得TRect,然后查询它的State以获取gdSelected... 但是如果有任何选定行,难道没有更快的方法来获取当前选定行的行号吗?