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

  

一. QMainWindow简介

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

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

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

 

 

 

 二. 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的操作(菜单栏、工具栏)

上一篇:linux grub 启动过程


下一篇:fastjson对json数组转java实体类list