刚刚开始对emit的传值不太理解,看了几篇文档,就大致知道怎么去运用了,写下自己的快速运用的理解:
将DiaLog的值传到Mainwindow中,两个界面两个类:
class MainWindow
{
private slots:
void recvdata(QString data);//来接收Dialog界面传过来的数据
}
class Dialog
{
private signal:
void sendData(QString senddata);//作为信号来发送senddata这个数据;
}
然后在那个OK按钮触发的槽函数On_OKButton_clicked()
中写入:
{
emit sendData(ui->lineedit->text());//文本框里面的内容发出去,:我的测试
}
然后再Mainwindow中的构造函数中进行connect连接:
MainWindow::Mainwindow()
{
DiaLog* dialog= new Dialog;//要找到信号的来源的界面
connect(dialog,SIGNAL(sendData(QString)),this,SLOT(recvData(QString)));}
然后这样就可以了;