1 QMainWindow
QMainWindow是一个为用户提供主窗口程序的类,包含一个菜单栏(menu bar),多个工具栏(tool bars),多个锚接部件(dock widgets)(悬浮窗口),一个状态栏(status bar)以及一个中心部件(central widget)
只能有一个的set,可以有多个的是add;
每一个都得加头文件;
1.1菜单栏
//菜单栏最多只有一个。
//菜单栏创建,创建菜单栏对象bar,MenuBar已经在对象树中了
QMenuBar *bar= menuBar();
//将菜单栏放入到窗口中
setMenuBar(bar);
//创建菜单
QMenu *fileMenu = bar->addMenu("文件");
QMenu *editMenu = bar->addMenu("编辑");
//创建菜单项
QAction * newAcition = fileMenu->addAction("新建");
//添加分隔线
fileMenu->addSeparator();
QAction * openAction = fileMenu->addAction("打开");
1.2工具栏
//工具栏 可以有多个
QToolBar * toolBar = new QToolBar(this); //指定父类
addToolBar(Qt::LeftToolBarArea,toolBar); //默认停靠区域
//后期设置 只允许左右停靠
//toolBar ->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea);
//设置浮动
toolBar->setFloatable(false);
//设置移动(总开关)
toolBar->setMovable(false);
//工具栏设置内容
toolBar->addAction(newAcition);
//添加分割线
toolBar->addSeparator();
toolBar->addAction(openAction);
//工具栏和菜单栏都有新建和打开,弄一个指针,后期直接设置
//工具栏中添加控件 (按钮也属于控价)
QPushButton *btn = new QPushButton("11",this);
toolBar->addWidget(btn);
1.3状态栏(标签信息)
//状态栏 最多有一个
QStatusBar *stBar = new QStatusBar();
//设置到窗口中
setStatusBar(stBar);
//放标签控件
QLabel * label = new QLabel("提示信息",this);
//把标签放上去
stBar->addWidget(label);
QLabel * label2 = new QLabel("右侧提示信息",this);
stBar->addPermanentWidget(label2);
1.4铆接部件=浮动部件
//锚接部件 浮动窗口 可以有多个(围绕着中心部件)
QDockWidget * dockWidget = new QDockWidget("浮动",this);
addDockWidget(Qt::BottomDockWidgetArea,dockWidget);
//后期设置停靠区域,只允许上下
dockWidget->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea)