首页 > Windows开发 > 详细

QT自学记录(3)——QMainWindow的操作(菜单栏、工具栏)

时间:2021-08-14 16:48:38      阅读:32      评论:0      收藏:0      [点我收藏+]

  

一. QMainWindow简介

  QmainWindowQT推出的QWidget窗口的子类,相对QWidget而言,QMainWindow的细节相对更多,分区更细致,加入了分栏等新工具,使得设计变得更加直观。

  QMainWindow的分区主要有以下几个:Menu Bar(菜单栏),Toolbars(工具栏),Dock Widget(悬浮窗),Main Widget(中央窗口)、Status Bar(状态栏)。

技术分享图片

 

 

 

 二. Menu Bar(菜单栏)的相关操作

  1. 对Menu的操作

    菜单栏顾名思义,是所有Menu(菜单)的集合,所以为了学习Menu Bar的相关操作,需要先学习Menu的相关操作。

    在单击菜单标题后,会弹出此菜单下的所有内容:菜单下可以包含PushButtonComboBox等内容,但是最基础的,也是最必要的,是      Action(指令)。引入指令需要用到QAction库。定义指令后,即可用addAction()将指令加入菜单。

  2. 对Menu Bar的操作

    类似于将指令加入菜单,将菜单加入菜单栏也只是需要加一步addmenu()

    以下为mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
 
#include <QtGui/QMainWindow>
 
class QAction;
class QMenu;
 
class MainWindow : public QMainWindow
{
    Q_OBJECT
protected:
    QAction *openAction;  //定义一个动作
    QMenu *fileMenu;  //定义一个菜单
    
public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();
};
 
#endif

    以下为mainwindow.cpp

<pre name="code" class="cpp"><pre name="code" class="cpp">#include "mainwindow.h"
 
#include <QMenu>
#include <QMenuBar>
#include <QAction>
 
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    openAction = new QAction(tr("Open"),this);  //初始化动作
    fileMenu = new QMenu;  //创建一个菜单
    fileMenu = menuBar()->addMenu(tr("File"));  //将菜单添加到菜单栏上
    fileMenu->addAction(openAction);  //将动作添加到菜单上
}
 
MainWindow::~MainWindow()
{
    
}

 三. Toolbar(工具栏)的相关操作

   

QT自学记录(3)——QMainWindow的操作(菜单栏、工具栏)

原文:https://www.cnblogs.com/LTS114514/p/15141067.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!