QMenu,QT的菜单添加
2013-03-31 15:31
495 查看
添加菜单方法1
m_pMenuBar= new QMenuBar(this);
QMenu*pFileMenu = new QMenu("&文件",m_pMenuBar);
QMenu*pOpenMenu = new QMenu("打开", pFileMenu);
QMenu*pCreateMenu = new QMenu("创建", pFileMenu);
QAction*pOpenAction = pFileMenu->addMenu(pOpenMenu);
QAction*pCreateAction = pFileMenu->addMenu(pCreateMenu);
connect(pOpenAction, SIGNAL(triggered()),this, SLOT(openFile()));
通过addMenu()添加起来的菜单是含有打开的箭头,并且不connect到信号和槽
添加菜单方法2
m_pMenuBar= new QMenuBar(this);
QMenu*pFileMenu = new QMenu("&文件",m_pMenuBar);
QAction*pOpenAction = pFileMenu->addAction("打开");
QAction*pCreateAction = pFileMenu->addAction("创建");
通过addAction只添加QAction*,不再会含有子菜单的展开箭头,并且可以connect消息和槽
。。。。
总结:猜测,菜单要有响应添加的是QAction*,并不是QMemu,当需要有子菜单的时候才会用addMenu ()函数。
m_pMenuBar= new QMenuBar(this);
QMenu*pFileMenu = new QMenu("&文件",m_pMenuBar);
QMenu*pOpenMenu = new QMenu("打开", pFileMenu);
QMenu*pCreateMenu = new QMenu("创建", pFileMenu);
QAction*pOpenAction = pFileMenu->addMenu(pOpenMenu);
QAction*pCreateAction = pFileMenu->addMenu(pCreateMenu);
connect(pOpenAction, SIGNAL(triggered()),this, SLOT(openFile()));
通过addMenu()添加起来的菜单是含有打开的箭头,并且不connect到信号和槽
添加菜单方法2
m_pMenuBar= new QMenuBar(this);
QMenu*pFileMenu = new QMenu("&文件",m_pMenuBar);
QAction*pOpenAction = pFileMenu->addAction("打开");
QAction*pCreateAction = pFileMenu->addAction("创建");
通过addAction只添加QAction*,不再会含有子菜单的展开箭头,并且可以connect消息和槽
。。。。
总结:猜测,菜单要有响应添加的是QAction*,并不是QMemu,当需要有子菜单的时候才会用addMenu ()函数。
相关文章推荐
- QMenu,QT的菜单添加
- QMenu,QT的菜单添加
- 在QT中添加右键菜单
- Qt添加右键菜单的方法
- Qt学习之给QPushButton添加菜单ActionsContextMenu方法
- Qt中QMenu的菜单关闭处理方法
- Qt 右击菜单的添加
- Qt5-控件-QMenu,QMenuBar-菜单栏详解-菜单热键-菜单校验功能
- qt中添加资源文件以及添加菜单图标、工具栏中菜单的快捷方式、窗口以及对话框的icon
- QT4 QMenu菜单 自定义上拉弹出
- Qt5 中给菜单添加图标不显示
- Qt自适应大小显示图片,添加菜单
- qt中添加资源文件以及添加菜单图标、工具栏中菜单的快捷方式、窗口以及对话框的icon
- Qt中QMenu的菜单关闭处理方法
- Qt界面添加菜单,工具栏以及状态栏
- Qt: 隐藏菜单QMenu
- QT QButton to QMenu自定义菜单
- Qt 学习(6)在QT中添加右键菜单
- 在QT中添加右键菜单
- Qt自适应大小显示图片,添加菜单