c++ - qmenu 不适用于 MAC (Qt Creator)

标签 c++ qt osx-snow-leopard

我在 Mac 10.6 上,我试图用 Qt (Creator) 创建一个菜单,但菜单没有出现。我从其他 pc 用户那里得到了一些反馈,同样的代码似乎在 windows 上也能工作:

#include <QtGui>  
#include "MyClass.h"  

MyClass::MyClass()  
{  
// Create a menu
    //QMainWindow::setMenuBar(new QMenuBar());  
    QMenu* my_menu = new QMenu("&File", this);  
    menuBar()->addMenu(my_menu);  
}  

你听说过 mac 的这种问题吗?

工具栏工作正常,但菜单不行。

编辑: 新代码:

#include <QtGui>
#include "MMenu.h"

MMenu::MMenu()
{
    QMenu* fileMenu = new QMenu("&File", this);
    QMenuBar *menuBar = new QMenuBar(0);
    menuBar->addMenu(fileMenu);
    //menuBar()->addMenu(fileMenu);
}

谢谢

最佳答案

首先,您可能对 addMenu(QString) 函数感兴趣,该函数一步返回创建的 QMenu。

其次,尝试向菜单中添加一些内容。 Mac 可能正在优化空菜单。但我知道这应该可行,我编写了一个在 OSX 上运行良好的程序,它以这种方式初始化菜单。

关于c++ - qmenu 不适用于 MAC (Qt Creator),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8108729/

相关文章:

c++ - 看似模棱两可的模板函数重载

c++ - 如何在Leonardo堆中找到root的左子节点和右子节点?

php - 如何在 mac osx 雪豹中安装 php5 curl?

c++ - 使用堆叠矩阵绘制立方体

c++ - 二维数组为函数参数时,这两种写法有什么区别?

c++ - Qt 5.3 QPlainTextEdit 实现滚动锁

c++ - Qt QInputDialog参数列表

c++ - qSin() 给出错误的 sin 值?

objective-c - 为 Finder.app 编写 Snow Leopard 服务

macos - 可以配置 OS X VPN 以在 VPN 和本地接口(interface)之间拆分流量吗?