我想使用信號和插槽連接主窗口和對話框。我對qt非常陌生。我在mainwindow.ui中有一個lineEdit和一個pushButton,它是dialog.ui中的一個lineEdit。我有這些最基本的代碼:
mainwindow.h:
Qt使用信號和插槽連接主窗口和對話框
signals:
void sendString(QString);
mainwindow.cpp:
void MainWindow::on_pushButton_clicked()
{
Dialog *mDialog = new Dialog(this);
emit sendString(ui->lineEdit->text());
connect(this, SIGNAL(sendString(QString)), mDialog, SLOT(showString(QString)));
mDialog->show();
}
dialog.h:
private slots:
void showString(QString);
dialog.cpp:
void Dialog::showString(QString str)
{
ui->lineEdit->setText(str);
}
但經過我點擊按鈕,對話框顯示,但沒有在lineEdit改變。
我希望我能夠清楚地解釋這一點嗎? 有人可以向我解釋爲什麼以及如何解決這個問題?謝謝。
連接子句後發射信號 – saeed