10-Qt不同窗口间传值
1. 信号与槽方式传值
-
新建
Qt Widget Application
,添加新的对话框Dialog
-
mainwindow.ui
有LCD Number
控件(属于显示控件),dialog
有Dial
控件(属于输入控件) -
当
Dial控件
的值改变时, 发送一个信号:在dialog.h
定义一个信号void sendData(int)
-
mainwindow.h
定义一个槽函数void processData(int value)
,用于对信号作出动作,效果是在LCD Number控件
显示Dial控件
的值void processData(int value) { ui->lcdNumber->display(value); }
-
manwindow.cpp
源文件初始的时候打开对话框,并且通过函数connect
连接信号与槽:MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); Dialog *dlg = new Dialog; dlg->show(); connect(dlg,SIGNAL(sendData(int)),this, SLOT(processData(int))); }
如果小伙伴们对文章内容有不理解的地方可以查看博主制作的相对应视频教程哦:
https://www.bilibili.com/video/av63357344