gpt4 book ai didi

c++ - QMenuBar 和 QMenu 在 Mac OS X 中不显示

转载 作者:行者123 更新时间:2023-12-03 10:09:21 26 4
gpt4 key购买 nike

我在 Mac OS X 10.7.4 上使用 Qt 4.7.4我正在尝试添加一个 QMenuBarQMenu 到我的应用程序没有成功。

在寻找示例时,我找到了 Basic Layouts Windows 上的界面截图显示了 File 菜单,这就是我想要做的:

enter image description here

但是,在 Mac OS X 上运行此示例不会在应用程序窗口中显示 文件 菜单:

enter image description here

它也没有显示在 Mac OS X 的顶部栏中:

enter image description here

这似乎是 Mac OS X 上 Qt 4.7.4 的一个错误,或者我们需要对源代码进行一些调整才能使其在 Mac 上运行。

我该如何解决这个问题?

我有 found similar Stack Overflow 上的帖子,但没有任何帮助。

最佳答案

代码没有问题,Qt也没有。您引用的示例仅在菜单中创建 Exit 操作。在 OS X 上,此类操作属于应用程序菜单,而不是文件菜单。您的应用程序被称为 qt_menu,这就是应用程序菜单的调用方式,您可以在其中找到 Quit 操作——Qt 已正确重命名它以符合 Apple 的 HIG .在 Windows 上,习惯上称它为 Exit,在 Mac 上它是不好的风格。 Qt 的行为是正确的,我可以重现它。

将其他操作添加到文件菜单,或者简单地将一个操作从 Exit 重命名为其他操作。

请注意,Qt 不会直接根据名称移动操作。 Qt 根据名字猜测 Action roles。您应该覆盖这些猜测并使用 QAction::setMenuRole() 显式设置操作角色。然后,这些角色会在各种平台上得到适当的解释。

关于c++ - QMenuBar 和 QMenu 在 Mac OS X 中不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11375176/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com