一、模式
之前一直用的是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、使用信号与槽的关系来绑定
实践的项目名称:
文章来源:https://www.toymoban.com/news/detail-495761.html
文章来源地址https://www.toymoban.com/news/detail-495761.html
到了这里,关于QT 多界面跳转以及窗口之间参数传递的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!