ActiveForm上的Delphi XE6 TStyleManager搞砸了主机应用程序

时间:2014-10-08 14:13:45

标签: delphi

我在这里有一个非常奇怪的问题。我有一个基于ActiveForm的.ocx。这个ActiveForm包含TStyleManager并以这种方式使用它:

TStyleManager.SetStyle(TStyleManager.LoadFromFile(Global_DM.SkinningFilename));

风格完美应用,效果很好。

现在问题:我的ocx嵌入在另一个应用程序中。这是一个.NET Windows Forms应用程序,用C#用Visual Studio 2008编写。不幸的是,我不知道这个应用程序的源代码。 每当我的ocx被"实例化"时,正在执行上面的行(仅一次),之后,托管应用程序中的所有弹出菜单都被搞砸了。看起来像这样: 好的,对不起。想在这里发布截图,但没有足够的声望点。 弹出菜单仍然具有正确的布局,手段,正确的条目数等。但是弹出窗口中的每个项目只有两到三个字符。好像您尝试使用错误的字符集显示特殊字符。

我必须再次强调一下:它是关于主机应用程序内部而不是我的ActiveForm上的弹出菜单。 我自己的ocx里面的一切仍然可以正常工作。如果我禁用我对TStyleManager的调用,托管应用程序也可以正常工作。所以它绝对是TStyleManager,它会破坏托管应用程序中的弹出菜单。这太熟了。

这个ActiveForm和TStyleManager如何影响我的ocx之外的控件的外观?

感谢任何提示。

哈利

0 个答案:

没有答案