zoukankan      html  css  js  c++  java
  • QStackedWidget动态多界面

    1、新建子界面的虚基类

    uiinterface.h

    #ifndef UIINTERFACE_H
    #define UIINTERFACE_H
    #include <QWidget>
    namespace UIINTERFACE_NAME_SPACE {
    #define UI_WIDTH 1520
    #define UI_HEIGHT 1118
    }
    
    class UiInterface : public QWidget
    {
        Q_OBJECT
    public:
        UiInterface(QWidget *parent = 0);
    private:
        /*初始化*/
        virtual void _init(){}
    };
    
    #endif // UIINTERFACE_H

    uiinterface.cpp

    #include "uiinterface.h"
    using namespace UIINTERFACE_NAME_SPACE;
    UiInterface::UiInterface(QWidget *parent)
        :QWidget(parent)
    {this->resize(UI_WIDTH, UI_HEIGHT);
    }
    

    2、新建子界面,类型是Qt设计师界面类,然后稍作修改【多个】

    uiradarperform.h

    #ifndef UIRADARPERFORM_H
    #define UIRADARPERFORM_H
    
    #include "uiinterface.h"
    
    namespace Ui {
    class UiRadarPerform;
    }
    
    class UiRadarPerform : public UiInterface
    {
        Q_OBJECT
    
    public:
        explicit UiRadarPerform(QWidget *parent = 0);
        ~UiRadarPerform();private:
        Ui::UiRadarPerform *ui;
        virtual void _init() override;
    };
    
    #endif // UIRADARPERFORM_H

    uiradarperform.cpp

    #include "uiradarperform.h"
    #include "ui_uiradarperform.h"
    
    UiRadarPerform::UiRadarPerform(QWidget *parent) :
        UiInterface(parent),
        ui(new Ui::UiRadarPerform)
    {
        ui->setupUi(this);
        (void)_init();
    }
    
    UiRadarPerform::~UiRadarPerform()
    {
        delete ui;
    }
    
    

    uiradarperform.ui

    可自定义界面

    3、在mainwindow.ui里拖入一个QStackedWidget

    4、在mainwindow.cpp构造函数里

    UiRadarPerform* pUI = new UiRadarPerform;
    ui->stackedWidget->addWidget(pUI);

    ps:重点和难点就是对Qt设计师界面类的修改,默认是继承QWidget,改成继承UiInterface类




    长风破浪会有时,直挂云帆济沧海!
    可通过下方链接找到博主
    https://www.cnblogs.com/judes/p/10875138.html
  • 相关阅读:
    (zt)在PHP中使用全局变量
    (zt)Flash与C++交互
    (zt)关于Flash Socket通信的安全策略问题的一点心得
    (zt)svn 随服务器启动
    使用InstallShield安装和卸载SQL Server数据库(利用sql脚本)
    异常查看部分代码
    VC为控件添加背景
    深入分析MFC文档视图结构
    VC数据库编程概述
    (转)WEB程序打包详解:(连接SQL2005数据库,修改配置文件,建立虚拟目录)
  • 原文地址:https://www.cnblogs.com/judes/p/14438897.html
Copyright © 2011-2022 走看看