QtCreator 新建Widget工程,选择QMainWindow基类。默认创建一个主窗口界面。
MainWindow方法:setFixedSize()设置窗口大小;
setWindowTilte("title")设置窗口标题。
menuBar();//返回窗口菜单栏 QMenuBar *
statusbar();//返回状态栏 QStattusBar*
addToolBar();//添加工具栏
addDockWidget();//浮动区域
菜单栏MenuBar(唯一):
addMenu("文件");//新建方式返回一个菜单QMenu*
菜单QMenu:可以添加多个QAction(菜单项)
addAction("保存");//新建方式返回一个QAction*
addSeparator();// 添加分割线
行为QAction://菜单项,可以添加到Menu或者ToolBar
点击信号 QAction::triggered
工具栏ToolBar:可以添加多个。可以容纳QAction QPushbutton。
浮动区域DockWidget:可以添加多个指定停靠方向。
中央区域CentrolWidget:中央部件,可以添加QTextEdit
状态栏StatusBar:唯一,可以添加Label显示信息
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
this->setFixedSize(800,600); //固定窗口大小
this->setWindowTitle("Form");
QMenuBar *bar = menuBar(); //获取窗口唯一菜单栏
QMenu *menu_flie = bar->addMenu("文件"); //为菜单栏添加菜单
bar->addMenu("编辑");
bar->addMenu("工具");
QAction *action_new = menu_flie->addAction("新建"); //向菜单添加 行为
//设置action触发事件
connect(action_new,&QAction::triggered,[=](){ //lamda表达式=表示值传递
QMessageBox::critical(this,"error","感谢触发"); //信息窗口静态函数
});
QStatusBar *status_bar = this->statusBar(); //返回窗口的状态栏
QLabel *a = new QLabel("工作中",this); //新建标签
status_bar->addWidget(a); //标签添加到状态栏
}