QT菜单栏和工具栏

1、菜单栏

  1. 菜单栏最多只有一个
  2. 创建菜单栏:QMenuBar * bar = menuBar();
  3. 将菜单栏放入窗口:setMenuBar(bar);
  4. 创建菜单:QMenu * fileMenu = bar->addMenu("文件"); QMenu * editMenu = bar->addMenu("编辑");
  5. 创建菜单项:在这里插入代码片QAction *newAction = fileMenu->addAction("新建");QAction *openAction = fileMenu->addAction("打开");
  6. 添加分隔线:fileMenu->addSeparator();

2、工具栏

  1. 可以有多个
  2. 创建工具栏:QToolBar * toolBar = new QToolBar(this);
  3. 将工具栏放入窗口,并设置停靠:addToolBar(Qt::LeftToolBarArea,toolBar);
  4. 设置只允许左右停靠:toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);
  5. 设置浮动:toolBar->setFloatable(false);
  6. 设置移动:总开关:toolBar->setMovable(true);
  7. 工具栏设置内容:toolBar->addAction(newAction); toolBar->addAction(openAction);
  8. 添加分割线:toolBar->addSeparator();
  9. 工具栏中添加控件:QPushButton * btn = new QPushButton("开始",this); toolBar->addWidget(btn);

3、代码示例

  • mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

class MainWindow : public QMainWindow
{
    
    
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
private:

};
#endif // MAINWINDOW_H

  • mainwindow.cpp
#include "mainwindow.h"
#include <QMenuBar>
#include <QToolBar>
#include <QPushButton>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    
    
    //重置窗口大小
    resize(600,400);

    //菜单栏最多只能有一个
    //创建菜单栏
    QMenuBar * bar = menuBar();
    //将菜单栏放入窗口
    setMenuBar(bar);
    //创建菜单
    QMenu * fileMenu = bar->addMenu("文件");
    QMenu * editMenu = bar->addMenu("编辑");
    //创建菜单项
    QAction *newAction = fileMenu->addAction("新建");
    //添加分隔线
    fileMenu->addSeparator();
    QAction *openAction = fileMenu->addAction("打开");

    //工具栏 可以有多个
    //创建工具栏
    QToolBar * toolBar = new QToolBar(this);
    //将工具栏放入窗口,并设置停靠
    addToolBar(Qt::LeftToolBarArea,toolBar);

    //设置只允许左右停靠
    toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea);
    //设置浮动
    toolBar->setFloatable(false);
    //设置移动:总开关
    toolBar->setMovable(true);

    //工具栏设置内容
    toolBar->addAction(newAction);
    //添加分割线
    toolBar->addSeparator();
    toolBar->addAction(openAction);

    //工具栏中添加控件
    QPushButton * btn = new QPushButton("开始",this);
    toolBar->addWidget(btn);
}

MainWindow::~MainWindow()
{
    
    
}
  • main.cpp
#include "mainwindow.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    
    
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();
}

4、运行结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43762434/article/details/133160452