C++ 如何在QT Creator中传递对插槽的引用
我在项目中有两个表单:mainwindow.ui和mydialog.ui。C++ 如何在QT Creator中传递对插槽的引用,c++,qt,C++,Qt,我在项目中有两个表单:mainwindow.ui和mydialog.ui。 每个都有.hpp和cpp文件。 mainwindow.cpp文件具有QList对象。 我按下主窗口窗体上的按钮,出现模式mydialog窗体。 然后我按下我的对话框窗体上的按钮,并在单击()时运行 是否可以访问单击的()插槽上的中的QList对象 如果是,那么怎么做?我将向MyDialog添加新的exec()方法,whitch将QList作为如下参数获取:void MyDialog::execWithQList(QLis
每个都有.hpp和cpp文件。
mainwindow.cpp文件具有
QList
对象。我按下主窗口窗体上的按钮,出现模式mydialog窗体。
然后我按下我的对话框窗体上的按钮,并在单击()时运行
是否可以访问单击的()插槽上的中的QList
对象
如果是,那么怎么做?我将向MyDialog添加新的exec()方法,whitch将QList作为如下参数获取:void MyDialog::execWithQList(QList&QList){m_QList=QList;exec();}
还可以将它传递到MyDialog中。有几种方法可以做到这一点。问题是setList()是一个句柄,它在MyDialog::on_btnCreate_clicked()发生时运行。它不会从主窗口调用::在单击时打开(),将setList添加到主窗口,通过特殊成员setMainWindowReference将主窗口引用传递给MyDialog,然后在MyDialog中调用主窗口的setList::在单击时打开():m_mainWindowReference->setList(您的DialogList);“通过特殊成员将主窗口引用传递给MyDialog”如何实现?
void MainWindow::on_btnCreate_clicked() {
MyDialog dialog;
dialog.setList(m_qList); // add member setList to your MyDialog class
dialog.exec();
}