QT——入门之界面跳转

首先我们要先创建一个类来控制界面跳转的类,这里我命名为Allwidgetpoint,不用继承任何类。

Allwidgetpoint.h文件

class Allwidgetpoint
{
public:
    //这里我创建2个QWidget指针的静态变量
    static QWidget *pLoginUi;
    static QWidget *pRegistrationUi;

Allwidgetpoint.cpp文件

#include "allwidgetpoint.h"
//静态变量要在类外赋值
QWidget *Allwidgetpoint::pLoginUi =NULL;
QWidget *Allwidgetpoint::pRegistrationUi = NULL;

int Allwidgetpoint::my_widget_x = 0;
int Allwidgetpoint::my_widget_y = 0;

然后我们再分别建立 Login类、和 Registration类,他们都是共有继承QWidget
Login.h文件(这里Registration类和Login类方式完全一致,只是名字不一样)

//Login.h文件中,注意要加上我们刚刚的Allwidgetpoint的头文件
#include "allwidgetpoint.h"
class Loginpublic QWidget  
{
     Q_OBJECT
public:
    explicit Login(QWidget *parent = 0);
}

Login.cpp文件中

Login::Login(QWidget *parent)
    : QWidget(parent)
{
	Allwidgetpoint::pLoginUi = this;
}

比如我们这里要用到Login界面,那么我们就可以使用Allwidgetpoint::pLoginUi->show();来将Login显示出来。

注意:这里界面直接显示的话位置可能会比较乱,因此你可以使用QApplication::desktop()的 width()和height()来获取你屏幕的长宽,然后再使用this->setGeometry();函数来设置界面的位置!

猜你喜欢

转载自blog.csdn.net/l1206715877/article/details/106191062