0
MainWindowにライン編集で数値を出力する信号があります。ボタンをクリックしてダイアログを開くと、その番号をダイアログの行編集にコピーします。私はそれを接続することはできません。信号がqDebugで発光しているのがわかります。私はそれを間違っているか間違った場所に接続していますか?私は多くの方法を試みました。ここに私のコードスニペットがあります。私は、これは接続するために取得できますかMainWindowからの信号をダイアログのスロットに接続する方法
メインウィンドウ
//My MainWindow
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) {
ui->setupUi(this);
//This is the number I am trying to send to the dialog
ui->checkingAmount->setText(QString::number(1000.00, 'f', 2));
ui->checkingAmount->setReadOnly(true);
}
//Emit the data here
void MainWindow::on_transferButton_clicked() {
transferWindow = new TransferWindow(this);
transferWindow->show();
//trying to emit the data
QString data =ui->checkingAmount->text();
emit shareCheckingData(data);
qDebug()<<"emitting mainwin amount";
}
ダイアログ
//My Dialog
TransferWindow::TransferWindow(QWidget *parent) : QDialog(parent),ui(new Ui::TransferWindow) {
ui->setupUi(this);
//I have tried several variations of this
//mainWindow = new MainWindow();
connect(mainWindow, SIGNAL(shareCheckingData(QString)),this, SLOT(getAmountFromMainWin(QString)));
}
//Here is the connecting slot to get the data from main window
void TransferWindow::getAmountFromMainWin(QString n) {
float CheckTotal = n.toFloat();
ui->checkingAmount->setReadOnly(true);
ui->checkingAmount->setText(QString::number(CheckTotal));
qDebug()<<"setting amount";
}
?私は多くの記事を読んだが、問題は解決しなかった。ありがとう。
あなたeyllanescをありがとうございます。あなたは何度か私を助けてくれました。それは有り難いです。 – equati0n