从上向下依次是菜单栏,工具栏,铆接部件(浮动窗口),状态栏,中心部件
菜单栏
创建菜单栏
QMenuBar* mybar1 = menuBar();
将菜单栏放到窗口中
setMenuBar(mybar1);
创建菜单
QMenu *myfilemenu = mybar1->addMenu("文件");
创建菜单项
myfilemenu->addAction("新建");
myfilemenu->addAction("打开");
添加分割符
myfilemenu->addSeparator();
note:菜单栏最多只有一个
工具栏
note:工具栏可以有多个
//创建工具栏
QToolBar* mytool1 = new QToolBar(this);
addToolBar(Qt::LeftToolBarArea,mytool1);
//只允许左右停靠
mytool1->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea);
//禁止浮动
mytool1->setFloatable(false);
//工具栏中设置的内容
mytool1->addAction(openAction);
mytool1->addAction(newAction);
状态栏
//创建状态栏:最多只有一个
QStatusBar* myState = statusBar();
setStatusBar(myState);
QLabel* mylabel1 = new QLabel("提示信息", this);
myState->addWidget(mylabel1);
QLabel* myLabel2 = new QLabel("右侧提示信息", this);
myState->addPermanentWidget(myLabel2);
铆接部件和中心部件
//铆接部件:多个
QDockWidget* myDock = new QDockWidget("浮动",this);
addDockWidget(Qt::BottomDockWidgetArea, myDock);
//设置中心部件:一个
QTextEdit* myEdit = new QTextEdit(this);
setCentralWidget(myEdit);
资源文件添加
ui->actionnew->setIcon(QIcon("路径"));
添加资源文件步骤
添加资源文件
open in Editor
随后添加前缀和添加文件即可
模态和非模态对话框创建
头文件
#include "QDialog"
connect(ui->actionnew,&QAction::triggered,this,[=](){
//对话框
//模态对话框:不可以对其他窗口进行操作
QDialog mylog(this);
mylog.resize(200,100);
mylog.exec();
});
connect(ui->actionnew,&QAction::triggered,this,[=](){
//对话框
//非模态对话框:可以对其他窗口进行操作
QDialog *mylog = new QDialog(this);
mylog->resize(200,100);
mylog->show();
//当关闭时候释放内存
mylog->setAttribute(Qt::WA_DeleteOnClose);
});
消息对话框
头文件
#include"QMessageBox"
connect(ui->actionnew,&QAction::triggered,this,[=](){
//消息对话框
QMessageBox::critical(parent,"critial","错误");
});
connect(ui->actionnew,&QAction::triggered,this,[=](){
//消息对话框
QMessageBox::information(parent,"info","提问");
});
参数1:父亲 参数2:标题 参数三:提示内容 参数4:按钮类型
其他标准对话框
例子:使用颜色对话框
//颜色
connect(ui->actionnew,&QAction::triggered,this,[=](){
//消息对话框
QColor color = QColorDialog::getColor(QColor(255,0,0));
});
文件对话框
//文件
connect(ui->actionnew,&QAction::triggered,this,[=](){
//消息对话框:返回值为路径
QFileDialog::getOpenFileName(this,"打开文件",".\\","(*.docx)");
});
登录窗口布局
在ui设计窗口进行设计
label:标签
text edit 输入框
push button 点击按钮
拖动widget进行布局
spacers是两个弹簧
间隙
最大大小
密码模式
UI控件
按钮控件
QListWidget控件
其他控件