qt之菜单的使用
来源:互联网 发布:淘宝店铺模版制作 编辑:程序博客网 时间:2024/05/04 03:18
首先从QMainWindow 中派生一个类,名为QMain,然后在构造函数中创建菜单,,每个菜单都有QAction组成,而这些QAction中,可以设置图标,快捷键,当被选中时在状态栏显示的文字,当然最重要的是用connect将QAction的triggered信号和相应的槽连接起来。
下面是代码
qmain.h
#ifndef QMAIN_H
#define QMAIN_H
#include <QMainWindow>
#include <QAction>
class QMain : public QMainWindow
{
Q_OBJECT
public:
explicit QMain(QWidget *parent = 0);
protected:
void createAction();
void createMenu();
void createToolBar();
signals:
public slots:
private:
QAction* exitAction;
QAction* openAction;
QAction* addNoteAction;
QAction* cutAction;
QAction* copyAction;
QAction* pasteAction;
QMenu* fileMenu;
QMenu* editMenu;
};
#endif // QMAIN_H
qmain.cpp
#include "qmain.h"#include <QMenuBar>#include <QIcon>#include <QApplication>QMain::QMain(QWidget *parent) : QMainWindow(parent){createAction();
createMenu();
resize(500,600);}void QMain::createAction(){exitAction = new QAction(tr("E&xit"),this);exitAction->setIcon(QIcon(":/images/delete.png"));exitAction->setShortcut(tr("Ctrl+Q"));connect(exitAction,SIGNAL(triggered(bool)),this,SLOT(close()));openAction = new QAction("&Open",this);openAction->setShortcut(QKeySequence::Open);openAction->setStatusTip(tr("open"));addNoteAction = new QAction(tr("node"),this);addNoteAction->setIcon(QIcon(tr(":/images/node.png")));addNoteAction->setStatusTip(tr("add node"));cutAction = new QAction(tr("&Cut"),this);cutAction->setIcon(QIcon(tr(":/images/cut.png")));cutAction->setShortcut(QKeySequence::Cut);cutAction->setStatusTip(tr("cut Text"));copyAction = new QAction(tr("&Copy"),this);copyAction->setIcon(QIcon(tr(":/images/copy.png")));copyAction->setShortcut(QKeySequence::Copy);pasteAction = new QAction(tr("&Paste"),this);pasteAction->setIcon(QIcon(":/images/paste.png"));pasteAction->setShortcut(QKeySequence::Paste);pasteAction->setStatusTip(tr("paste text"));}void QMain::createMenu(){fileMenu = menuBar()->addMenu("&File");fileMenu->addAction(exitAction);editMenu = menuBar()->addMenu("&Edit");editMenu->addAction(addNoteAction);editMenu->addAction(cutAction);editMenu->addAction(pasteAction);editMenu->addAction(openAction);}void QMain::createToolBar(){}main.cpp:#include <QApplication>#include <qmain.h>int main(int argc,char* argv[]){ QApplication app(argc,argv); QMain* ma = new QMain; ma->show(); return app.exec();}
0 0
- qt之菜单的使用
- Qt 教程 之 菜单简单使用
- Qt之菜单或者对二级菜单的理解.
- QT之自定义菜单
- QT之二级菜单
- Qt之右键菜单
- QT之菜单栏QMenu,下拉菜单QAction,工具栏QToolBar的使用(二)
- 【转】QT之菜单栏QMenu,下拉菜单QAction,工具栏QToolBar的使用
- 自学QT之菜单按钮(按钮菜单)即带有菜单的按钮
- qt的弹出式菜单
- Qt之自定义菜单(按钮菜单)
- Qt之自定义菜单(按钮菜单)
- Qt之自定义菜单(托盘菜单)
- Qt之自定义菜单(右键菜单)
- Qt之自定义菜单(按钮菜单)
- Qt之自定义菜单(右键菜单)
- Qt之自定义菜单(右键菜单)
- 自学QT之托盘菜单
- 安卓中setting.gradle中文件错乱及moudle项目手机下标的恢复
- Oozie shell script action
- 太用力的人跑不远
- 394. Decode String
- QT中如何将QString中的IP地址提取到一个4字节数组中
- qt之菜单的使用
- javaweb接收客户端上传的图片
- Java IO - Buffering
- Orlmite配置文件writeConfigFile出现Could not find raw directory which is typically in the res directory
- 【C语言】字符串中的转义字符与字符串的长度
- eclipse中 使用android annotations 框架 clean 后,出现了一下错误
- Appium入门示例(Java)
- 那些年玩Canvas踩过的坑
- android图片压缩