效果图:
代码段:
/******************main.cpp***********************/
#include "mainwindow.h"
#include <QtWidgets/QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
/******************mainwindow.h*******************/
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtWidgets/QMainWindow>
#include "ui_mainwindow.h"
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
};
#endif // MAINWINDOW_H
/*******************mainwindow.cpp****************/
#include "mainwindow.h"
#include <QPushButton>
#pragma execution_character_set("utf-8")//防止乱码问题
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
//重置窗口大小
resize(600, 400);
/*************菜单栏*************/
//菜单栏创建,并添加到MainWindow
QMenuBar * bar = new QMenuBar;
setMenuBar(bar); //添加菜单栏
//在菜单栏添加菜单
QMenu* fileMenu = bar->addMenu("文件");
QMenu* editMenu = bar->addMenu("编辑");
//在菜单中添加菜单项
QAction * newAction = fileMenu->addAction("新建");
//添加分割线
fileMenu->addSeparator();
QAction* openAction = fileMenu->addAction("打开");
/*************工具栏*************/
//工具栏 可以有多个
QToolBar * toolbar = new QToolBar;
addToolBar(Qt::LeftToolBarArea,toolbar); //在mainwindow中添加toolbar
toolbar->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea); //允许移动的范围
toolbar->setFloatable(true); //不允许浮动
//toolbar->setMovable(false); //设置移动(总开关)
//将newAction放在工具栏中
toolbar->addAction(newAction);
toolbar->addSeparator(); //分割线调用一次只出现一条分割线
//将openAction放在工具栏中
toolbar->addAction(openAction);
toolbar->addSeparator(); //添加分割线
//工具栏中也可以添加控件
QPushButton * btn = new QPushButton("关闭");
toolbar->addWidget(btn);
}
MainWindow::~MainWindow()
{
}