[Qt]创建主窗口
来源:互联网 发布:微信一键转发软件 编辑:程序博客网 时间:2024/04/30 18:42
关于QMainWindow
是QWidget的子类,具有QWidget的很多功能,比如setWindowIcon等,也另外单独提供了一些接口,比如设置中央窗口部件的setCentralWidget
我们实现主窗口时,都会继承自QMainWindow,比如:
class TestWindow:public QMainWindow{Q_OBJECTpublic:TestWindow(QWidget *parent = NULL);private:QMenu *m_pFileMenu;QToolBar *m_pFileToolBar;QAction *m_pOpenAction;QTextEdit *m_pTextEdit;private slots:void open();};
设置中央窗口部件
比如我这里设置QTextEdit为中央窗口部件
m_pTextEdit = new QTextEdit("xxx");setCentralWidget(m_pTextEdit); //设置中央窗口部件
动作
动作可以加入到菜单、工具栏和上下文菜单中,比如我们经常使用的粘贴、复制等
我这里简单定义一个打开动作,然后将其加入到这些上述的这些菜单中去:
m_pOpenAction = new QAction("&Open",this);m_pOpenAction->setIcon(QIcon(":/image/open"));m_pOpenAction->setStatusTip("open action");m_pOpenAction->setShortcut(QKeySequence::Open);
这里只是简单定义了一个动作,并没有实际行为,这里将此动作连接到自动以的open槽:
connect(m_pOpenAction,SIGNAL(triggered()),this,SLOT(open()));
void TestWindow::open(){QFileDialog::getOpenFileName(this,"open file",".","All file(*.*)");}
菜单
新建一个菜单,并将前面定义的打开动作添加进来:
m_pFileMenu = menuBar()->addMenu("&File");m_pFileMenu->addAction(m_pOpenAction);
工具栏
使用addToolBar接口可以添加一个工具项,这里加打开动作添加进来
m_pFileToolBar = addToolBar("&File");m_pFileToolBar->addAction(m_pOpenAction);
前面设置了QTextEdit为主窗口的中央窗口部件,其实QTextEdit自带有上下文菜单,这里为了演示,不使用自带的,而是用自定义的打开动作:
//为了演示,这里不使用QTextEdit默认的上下文菜单m_pTextEdit->addAction(m_pOpenAction);m_pTextEdit->setContextMenuPolicy(Qt::ActionsContextMenu);
状态栏
状态栏比较简单,第一次调用statusBar()时,会创建状态栏
statusBar()->showMessage("status bar",3000);
运行一下
- QT创建主窗口
- [Qt]创建主窗口
- QT 创建主窗口
- QT 创建主窗口 MainWindow 实例
- Qt学习之三:创建主窗口
- 6--QT 创建主窗口MainWindow
- QT 创建无边窗口
- Qt 创建OpenGL窗口
- qt创建无边框窗口
- QT开发 查找窗口创建
- Qt OpenGL----创建openGL窗口
- Qt学习之对话框与主窗口的创建
- QT创建两个窗口(一个窗口包含另一窗口)
- QT带有主创窗口应用程序的创建
- QT创建自定义窗口部件笔记
- Qt之无边框窗口创建
- vs2013+qt5.5.0创建qt窗口工程
- 用QT创建一个窗口的代码
- Windows静态库和动态库的创建和使用
- 10820 - Send a Table
- Python标准库03 路径与文件 (os.path包, glob包)
- cocos2d-x 笔记小记1
- u-boot-2010.06在TQ2440上的移植--建立自己的demo板
- [Qt]创建主窗口
- C语言头文件的使用
- 【组件】devExpress源代码编译错误
- 正则表达式符号
- iOS绘图教程
- 软件名言精粹
- 二叉树的镜像--递归和迭代分别实现
- C++虚函数
- HDU1719(找规律)