请参阅以下步骤重现.在XE2中运行良好,但不适用于XE8.
>创建一个新的VCL Forms Forms – Delphi
>在表单上放置一个TButton和一个TOpenDialog
>按钮OnClick事件调用OpenDialog1.Execute
>运行程序,打开文件对话框,右键单击文本文件=>显示菜单项可以
>转到项目/选项/应用/外观.启用并选择自定义样式(如“Ruby Graphite”)并重新编译
>运行程序,然后右键单击文本文件=>不正确显示菜单项(显示无效字符)
解决方法
Windows 10引入了代码中的一些内部更改,负责绘制shell弹出菜单.所以VCL风格代码必须修改为与Windows 10兼容.我刚刚报告了
this to EMB
作为解决方法,您可以使用修复此问题的VCL Styles Utils项目(只需要将Vcl.Styles.Utils.Menus单元添加到您的项目中).