QT - Day 2
- QMainWindow
- 菜单栏 最多有一个
- QMenuBar *bar = MenuBar();
- setMenuBar(bar);
- QMenu *fileMenu = bar->addMenu("File"); 创建菜单
- QAction *newAction = fileMenu->addAction("New"); 创建菜单项
- fileMenu->addSeparator(); 添加分割线
- 工具栏 可以有多个
- QToolBar *toolbar = new QToolBar(this);
- addToolBar(默认停靠区域, toolbar); Qt::LeftToolBarArea
- 设置 后期停靠区域,设置浮动,设置移动
- 添加菜单项 或者添加小空间
- 一些代码:
//菜单栏创建 只能最多有一个 QMenuBar*bar = menuBar(); setMenuBar(bar); QMenu *fileMenu = bar->addMenu("File"); QMenu *editMenu = bar->addMenu("Edit"); QAction * newAction = fileMenu->addAction("New"); //添加分割线 fileMenu->addSeparator(); QAction * openAction = fileMenu->addAction("Open"); //工具栏 可以有多个 QToolBar *toolbar = new QToolBar(this); addToolBar(Qt::LeftToolBarArea,toolbar); //设置停靠范围 toolbar->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea); //设置浮动 toolbar->setFloatable(false); //设置移动(总开关) toolbar->setMovable(false); //工具栏中设置内容 toolbar->addAction(newAction); toolbar->addSeparator(); toolbar->addAction(openAction); //工具栏中添加控件 QPushButton *btn = new QPushButton("button",this); toolbar->addWidget(btn);
- 状态栏的创建 最多一个
//状态栏 最多有一个 QStatusBar *stBar = statusBar(); //设置到窗口中 setStatusBar(stBar); //放标签控件 QLabel * label = new QLabel("提示信息", this); stBar->addWidget(label); QLabel *label2 = new QLabel("右侧提示信息",this); stBar->addPermanentWidget(label2);
- 铆接部件 浮动窗口 可以多个
//铆接部件(浮动窗口) 可以有多个 QDockWidget *dockWidget = new QDockWidget("浮动"); addDockWidget(Qt::BottomDockWidgetArea,dockWidget); //设置后期停靠区域, 只允许上下 dockWidget->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
- 设置核心部件 只能一个
//设置中心部件 QTextEdit *edit = new QTextEdit(); setCentralWidget(edit);
- 资源文件
- 将图片文件拷贝到项目位置下(这个很重要,如果放到其他路径下,会报错)
- 右键项目->添加新文件->Qt->Qt resource->给资源文件起名(比如res)
- res生成res.qrc
- open in editor 编辑资源
- 添加前缀 添加文件
- 使用 ":+ 前缀名 + 文件名"
- 示意图
- 菜单栏 最多有一个