0


QT 多界面跳转以及窗口之间参数传递

一、模式

之前一直用的是c#,由于最近要使用CC来二次开发,所以先熟悉一下QT。

1、从一个界面跳到另外一个界面不需要返回

2、从一个界面跳到另外一个界面需要返回

1、新增主窗口

二、窗口跳转

需要返回:

主窗口


void MainWindow::on_Load_Btn_clicked()
{
    static  int  count=0;
   QString  name=ui->lineEdit_userName->text();
   QString  pwd=ui->lineEdit_password->text();
   if(name=="123" && pwd=="1234567")
   {
      ui->tishi->setText("OK, load success  !!");
      SecondWindow *min=new SecondWindow(this);
      min->show();
      this->hide();
   }else
   {
       count++;
       if(count>3)
       {
           ui->lineEdit_userName->setEnabled(false);
           ui->lineEdit_password->setEnabled(false);
       }
       ui->tishi->setText("all 3times,and you have");
   }
}

第二个窗口:

#include "secondwindow.h"
#include "ui_secondwindow.h"

SecondWindow::SecondWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::SecondWindow)
{
    ui->setupUi(this);
  qDebug()<<"  SecondWindow::SecondWindow: first mainwindow  address :"<<parent ;
}

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

void SecondWindow::on_backBtn_clicked()
{
    this->parentWidget()->show();
    delete this;
}

原理:

注意点:

1、必须在新的窗口中传入当前的窗口的指针

三、不同窗口之间传参

本质上是类和类之间的传参

父窗口-》子窗口

1、在接受界面的窗口中定义一个函数,接收函数

2、在发送参数的那个界面中将这个 参数传递过去

子窗口-》父窗口

本质是信号 和槽

1、在子窗口中定义一个信号 用来发送参数

2、在子窗口中用信号发出

3、在主窗口中声明一个槽函数

4、使用信号与槽的关系来绑定

实践的项目名称:

标签: qt ui 开发语言

本文转载自: https://blog.csdn.net/weixin_39354845/article/details/129846290
版权归原作者 Σίσυφος1900 所有, 如有侵权,请联系我们删除。

“QT 多界面跳转以及窗口之间参数传递”的评论:

还没有评论