2009-10-29 74 views
0

我正在移植使用Qt框架(Qt,而不是QuickTime)到Mac/Cocoa的UNIX应用程序。一般来说,生活是美好的。 Qt有一个Cocoa实现,所以对于一些Objective-C++,我已经获得了许多Mac特定的位。本地化应用程序(主)菜单?

我无法获得主菜单(即应用程序菜单)的翻译。它使用设置:

[NSApp setMainMenu:menu]; 

我有我的en.lproj,ja.lproj,fr.lproj等文件夹设置,他们有InfoPlist.strings文件。 Qt处理应用程序特定菜单的内部本地化。但如果我改用语言,我仍然会“退出Avogadro”。

我已阅读尽可能多的Mac开发人员中心文档,但无法找到答案。

我知道mainMenu中的字符串是由Cocoa处理的 - 它们没有在任何Apple应用程序中本地化。关于魔法触发器的任何想法?任何想法在哪里看?

在此先感谢!

+0

也许我应该换个方式。这个问题是苹果技术支持事件的合适人选吗? – 2009-10-29 16:45:13

+0

真的吗?赞成没有评论的投票?请注意,这不适用于Qt5,我没有检查是否仍然是问题。 – 2015-12-30 05:32:53

回答

0

我想一些信息添加到这一点,如果是别人要做到这一点。我也在尝试修改应用程序主菜单,并试图将它设置在awakeFromNib方法中。这从来没有工作,因为根据这个thread我们需要修改应用程序的主菜单后菜单已被设置。否则,应用程序将始终使用Info.plist中的标题。所以,这意味着如果您更改了应用程序的名称,则永远不必更新应用程序的MainMenu.nib。