dialog和mainwindow
mainwindow的ui文件是默认有menubar,maintoolbar和statusbar的
dialog却没有,因此mainwindow可以直接在ui文件中进行添加,而dialog只能通过代码进行自定义菜单设置
本文主要介绍menubar和statusbar的自定义添加
mainwindow的UI界面
自定义menubar和statusbar
什么是菜单栏和状态栏
以下图界面为例,图片上方,组织,包含到库中,新建文件夹构成的部分就是菜单栏menubar,图片下方31个对象就是状态栏statusbar
菜单栏:
状态栏:
代码
主要涉及到4个类:QMenuBar、QMenu、QAction、QStatusBar
- QMenuBar:窗口的菜单栏,在此基础上添加不同的QMenu和QAction
- QMenu:菜单,可以显示文本和图标,但是并不负责执行操作
- QAction: 负责执行操作的部件
- QStatusBar:负责提示的状态栏,通常在窗口最下侧
话不多说,上代码!
//dlg.h
#include <QMenu>
#include <QMenuBar>
#include <QStatusBar>
public:
QMenu* menu[10];
QAction* act[10];
QMenuBar* menuBar ;
QStatusBar* statusBar;
//dlg.cpp
#include <QDebug>
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
statusBar = new QStatusBar(this);
menuBar = new QMenuBar(this);</