【发布时间】:2015-10-16 07:00:36
【问题描述】:
在 Delphi 应用程序中,当您将鼠标悬停在边框图标上时,例如:
- 最小化
- 最大化
- 恢复
它的行为不正确:
与运行正常的应用程序进行比较:
复制步骤
- 点击文件、新建、VCL Forms Application - Delphi
- 点击运行 (F9)
- 将鼠标悬停在“最小化”、“最大化”或“关闭”按钮上。
如何解决?
- Windows 10,64 位(在台式电脑上本机运行)
- 德尔福 XE6
编辑 - Delphi 7 也失败:
在 Delphi 5 中:
在 Delphi 4 中:
我假设(即害怕)它是由 ThemeServices 引擎引起的;他们可能认为不尊重用户的偏好很酷。但看起来这是更基本的东西。
兼容模式
- 无:失败
- Windows 8:失败
- Windows 7:失败
- Windows Vista(Service Pack 2):失败
- Windows Vista(Service Pack 2):失败
- Windows Vista:失败
- Windows XP (Service Pack 3)(非客户区主题已禁用):有效
- Windows XP (Service Pack 2)(非客户区主题已禁用):有效
- Windows 98 / Windows Me(禁用非客户区主题):有效
- Windows 95(非客户区主题已禁用):有效
Skype
在 Skype 中也失败了;也是用 Delphi 编写的:
高 DPI 是触发因素
我终于弄清楚了为什么它在我使用过的每台 Windows 10 机器上都失败了;但并不适合所有人。高 dpi。
将 dpi 设置为 97 (101%) 或更高。
足够关闭
Dalija 的解决方案有效:
我们将忽略工具提示的问题并继续战斗。
还应该注意的是,Windows 10 会建议您在更改 DPI 后可能必须注销并重新登录才能使某些应用程序正常工作。 Delphi 绝对是这样。
还应该注意的是,Delphi 不会容忍 DPI 像这样在其背后发生变化。这包括调整 缩放 滑块。这还包括将应用程序放置在除主显示器之外的任何显示器上。
而且我们从来没有弄清楚问题是什么;只为运行多台显示器的用户踢了它。
质量控制错误报告
因为 Bor...Impr...CodeG...Embarca... Idera 的 QC 网站位于付费墙后面,这是bug report: 的副本
如您所见:没人在乎。
【问题讨论】:
-
这是 Windows 10 吗?如果是这样,您就不能真的期望在操作系统推出之前使用某个版本的 Delphi 一切都能完美运行。
-
@Jerry Embarcadero 一直在大力宣传 XE8 支持 Windows 10,这对我来说似乎很奇怪。我会对 XE8 的不同表现感到惊讶。另外,Win 10 不是中心字幕吗?
-
@David 我不知道,还没看过。我只知道那些按钮(以及整个窗口样式)与我见过的任何版本的 Windows 都不匹配。
-
我现在在本地运行 Windows 10。所以我的问题不再适用于测试版产品。我希望其他人调试 VCL 以找出它在 this 时间做错了什么。我们已经使用 XE6 一年多了,如果运气好的话,我们明年也许可以用它发布一个应用程序。错误太多了。
标签: delphi vcl windows-10 delphi-xe6