В моем проекте я хочу вызвать переменную QImage image
, сгенерированную в mainwindow.h
, в других файлах классов, например, с именем SegSetupDialog.h
. Здесь image
загружается нажатием кнопки в mainwindow.ui
, а SegSetupDialog
- это QDialog
, которая появляется при нажатии одной кнопки в mainwindow.ui
.
Я попытался использовать соединение через сигнальный слот для отправки qimage
из mainwindow
в SegSetupDialog
следующим образом.
Для класса MainWindow:
SegSetupDialog *segsetup;
if(image.isNull()==false)
{
emit sendImgData(image);
qDebug()<<"sendImgData emitted!";
if(segsetup==NULL) segsetup = new SegSetupDialog();
connect(this, SIGNAL(sendImgData(QImage)),segsetup,SLOT(getImgData(QImage)),Qt::QueuedConnection);
}
В SegSetupDialog :: getImgData
void SegSetupDialog::getImgData(QImage qimage)
{
qImg = qimage;
qDebug()<<"qimage received!";
}
Похоже, что указанное выше соединение не работает, поскольку сообщение qDebug в getImgData
не распечатывается. Кто-нибудь может помочь проверить что-то не так с кодами или предложить другие способы доступа к image
из mainwindow
? Спасибо !!