Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题

添加菜单栏和工具栏

1、首先打开Qt Designer,选择新建Main Window

Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第1张图片

2、编辑菜单栏,记住编辑完之后一定要按回车键(Enter键)

Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第2张图片

3、在新建的窗体中点击鼠标右键,选择添加工具栏

Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第3张图片
Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第4张图片

4、在动作编辑器中新建动作,右键鼠标新建或者直接选择新建都行。

Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第5张图片
Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第6张图片
例如新建一个打开功能的工具栏:
Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第7张图片

5、将动作拖动(鼠标左键按住拖动)到工具栏中

Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第8张图片

6、最终结果

Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第9张图片

单窗口实现多页面切换问题

本实例最外层是一个分割窗体,上层是QFrame,内部有两个按钮DICOMData和DICOMImage,下层是一个QStackWidget,stack默认有两个页面,想要在添加可鼠标右键,单键添加按钮。
Qt界面设计——添加工具栏、菜单栏 和 单窗口实现多页面切换问题_第10张图片
代码实现:

//MainWindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

class QStackedWidget;
namespace Ui{
class MainWindow;
}

class MainWindow::public QMainWindow
{
Q_OBJECT
public:
		MainWindow(QWidget* parent = 0);
		~MainWindow();

		void switchPage();//切换函数

private:
		Ui :: MainWindow *ui;
};

#endif
//MainWindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"

#include

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    connect(ui->pbt_DicomData,&QPushButton::clicked,this,&MainWindow::switchPage);
    connect(ui->pbt_DiacomImage,&QPushButton::clicked,this,&MainWindow::switchPage);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow:: switchPage()
{
    //接收发送信号的指针
    QPushButton* button = qobject_cast(sender());

    if(button == ui->pbt_DicomData)
    {
        ui->pageChange->setCurrentIndex(0);
    }
    else
    {
        ui->pageChange->setCurrentIndex(1);
    }
} 

你可能感兴趣的:(qt,ui,c++)