Delphi 10 西雅图 - VCL 样式的 Vista 对话框错误

Delphi 10 Seattle - Vista Dialogs bug with VCL Styles

我 运行 昨天在 "Delphi 10 Seattle" 遇到了 "Vista Dialogs" 的问题。它似乎不适用于某些 VCL 样式。 在我的应用程序中使用 "Windows 10 Dark" 作为默认样式时出现此错误。 所以我的直接想法是 Vista 对话框不适用于自定义 VCL 样式,但是当使用 "Windows" 作为默认样式并使用 Windows 10 作为 OS 时,对话框工作正常。

我上传了两张图片,一张应用了显示视觉错误的样式,另一张没有,工作正常。

未应用 "Windows 10 Dark" VCL 样式

应用了 "Windows 10 Dark" VCL 样式

我已经研究过这个问题,这个错误在其他帖子中提到过,但这个错误不是那些帖子的主题...... 任何人都明白为什么会这样?我该如何解决?

RAD Studio 中包含的 VCL Styles 版本只能设置经典对话框的样式,如果你想完全支持新对话框,你必须使用 VCL Styles Utils 项目。

只需安装库并将这些单元添加到您的项目中。

uses
  Vcl.Styles.Utils.Menus, //Popup and Shell Menus (class #32768)
  Vcl.Styles.Utils.Forms, //dialogs box (class #32770)
  Vcl.Styles.Utils.StdCtrls, //buttons, static, and so on
  Vcl.Styles.Utils.ComCtrls, //SysTreeView32, SysListView32
  Vcl.Styles.Utils.ScreenTips, //tooltips_class32 class
  Vcl.Styles.Utils.SysControls,
  Vcl.Styles.Utils.SysStyleHook;