菜单栏
创建菜单栏
- 关键词:
QMenuBar
:声明一个菜单 - 需要添加
#include <QMenuBar>
头文件 - 菜单栏最多有一个
添加菜单:addMenu
//重置窗口大小
resize(600,400);
//菜单栏 只能最多有一个
//菜单栏创建
QMenuBar * bar = menuBar();
//将菜单栏放入到窗口中
setMenuBar(bar);
//创建菜单
// 需要添加#include <QMenuBar>头文件
bar->addMenu("文件");
bar->addMenu("编辑");
运行结果:
声明菜单需要一个返回值来接收他,返回值类型为:QMenu
QMenu * filemenu = bar->addMenu("文件");
QMenu * editment = bar->addMenu("编辑");
添加菜单项
用菜单对象调用addAction
//创建菜单
QMenu * filemenu = bar->addMenu("文件");
QMenu * editment = bar->addMenu("编辑");
//创建菜单项
filemenu->addAction("新建");
filemenu->addAction("打开");
filemenu->addAction("最近访问");
运行结果:
添加分割线
关键词:addSeparator
QMenu * filemenu = bar->addMenu("文件");
QMenu * editment = bar->addMenu("编辑");
//新建菜单项
filemenu->addAction("新建");
filemenu->addAction("打开");
//添加菜单项之间的分割线
filemenu->addSeparator();
filemenu->addAction("设置");
filemenu->addAction("首选项");
运行结果:新建、打开和设置、首选项之间有一条分割线
工具栏
创建工具栏
- 关键词:
QToolBar
- 需要添加头文件:
#include <QToolBar>
- 工具栏 可以有多个
//新建工具栏
QToolBar * toobar = new QToolBar(this);
//菜单默认是不会依附于窗口,需要:
addToolBar(toobar);
运行结果:
新建的工具栏默认在上方,可以在创建是修改其位置
// 停靠在左边
addToolBar(Qt::LeftToolBarArea,toolBar);
设置 只允许 左右停靠
toolBar->setAllowedAreas( Qt::LeftToolBarArea | Qt::RightToolBarArea );
设置浮动,关闭浮动
toolBar->setFloatable(false);
设置工具栏内容
关键词:addAction
//新建工具栏
QToolBar * toobar = new QToolBar(this);
//菜单默认是不会依附于窗口,需要:
addToolBar(toobar);
// 设置工具栏内容
toobar->addAction("字体");
toobar->addAction("主题");
运行结果:
工具栏的添加按钮
- 关键词:
addWidget
//新建工具栏
QToolBar * toobar = new QToolBar(this);
//菜单默认是不会依附于窗口,需要:
addToolBar(toobar);
//工具栏的添加按钮
QPushButton * btn = new QPushButton("开始",this);
toobar->addWidget(btn);
状态栏
新建状态栏
关键词:statusBar
包含头文件:#include <QStatusBar>
状态栏 最多有一个
// 新建状态栏
QStatusBar * sta = statusBar();
//放到窗口中
setStatusBar(sta);
运行结果:
在状态栏中添加标签
创建标签需要添加头文件:#include <QLabel>
// 新建状态栏
QStatusBar * sta = statusBar();
//放到窗口中
setStatusBar(sta);
//放标签控件
QLabel * label = new QLabel("提示信息",this);
// 将标签放到状态栏中
sta->addWidget(label);
运行结果:
右侧显示状态栏信息
//放标签控件在右侧
QLabel * label2 = new QLabel("右侧提示信息",this);
sta->addPermanentWidget(label2);
运行结果:
浮动窗口
关键词:QDockWidget
包含头文件:#include <QDockWidget>
浮动窗口可有多个
// 浮动窗口
QDockWidget * dock = new QDockWidget("浮窗",this);
addDockWidget(Qt::BottomDockWidgetArea,dock);
浮动窗口是围绕与中心部件的
//设置中心部件 只能一个
QTextEdit * edit = new QTextEdit(this);
setCentralWidget(edit);
// 浮动窗口
QDockWidget * dock = new QDockWidget("浮窗",this);
addDockWidget(Qt::BottomDockWidgetArea,dock);
可以拖动浮窗移动