我是使用Qt編程的新程序,我需要將信號(例如菜單觸發的信號)與另一個類中的插槽連接起來。這是我的代碼: connect(ui-> actionAbrir,SIGNAL(triggered()),this,SLOT(QImageProc :: open())) 應用程序運行時沒有錯誤,但連接似乎沒有工作,當我啓動應用。將信號連接到不同類中的插槽
回答
使用Qt 4連接語法時,不需要在SLOT宏中指定類名(QImageProc
)。此外,您可以使用返回值檢查連接的正確性。
更新:您的QImageProc
類的對象必須通過使用指針或一個部件中,例如加入到MainWindow
類:
//MainWindow.h:
QImageProc* m_pImageProc;
//MainWindow.cpp:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
//somthing like this:
m_pImageProc = new QImageProc(/* parameters */);
//add m_pImageProc as a third parameter to connect:
bool ok = connect(ui->actionAbrir, SIGNAL(triggered()), m_pImageProc, SLOT(open()));
//...
我在MainWindow類中創建了這個連接,但它不起作用 –
@ A.Duarte,您需要展示一個最小工作示例:如何以及在哪裏創建'actionAbrir',您在哪裏創建'connect',你在哪裏定義'open()' –
我在類QImageProc中定義了open(),這是代碼: void QImageProc :: open() { QString fileName = QFileDialog :: getOpenFileName(this,tr(「 Abrir archivo「),QDir :: currentPath()); if(!fileName.isEmpty()) { this-> image = QImage(fileName); } } –
- 1. 如何將信號連接到不同線程中的插槽
- 2. 如何將信號連接到插槽
- 3. Qt將信號連接到插槽
- 4. 將信號連接到插槽的不同方法
- 5. Qt連接信號插槽
- 6. Qt連接信號插槽
- 7. 如何將不同的信號連接到QT上的同一個插槽?
- 8. .ui中的信號和插槽連接
- 9. QT連接插槽/信號不工作
- 10. 如何連接Qt中不同對象的信號和插槽?
- 11. 將信號連接到Qt中的插槽時出現問題
- 12. 試圖將另一個類的信號連接到主類中的插槽
- 13. 當調用時更改插槽中的信號插槽連接
- 14. 信號/插槽連接的總數?
- 15. 將方法類中的信號連接到不同的類槽定製信號PySide
- 16. 連接不同關係的信號和插槽
- 17. 將所有的對象信號連接到一個插槽
- 18. PySide/Qt:將信號連接到插槽的參數太多?
- 19. 將信號連接到固定值的插槽
- 20. Qt連接信號和插槽
- 21. Qt5:無法連接信號插槽
- 22. 更改信號插槽連接順序
- 23. 調試Qt信號,插槽和連接
- 24. qt,信號插槽沒有連接?
- 25. QObject ::連接沒有連接信號到插槽
- 26. 將QPushButton信號連接到QGraphicsView插槽時出現問題
- 27. Qt Designer在哪裏將信號存儲到插槽連接?
- 28. 如何以靜態方式將信號連接到插槽?
- 29. PyQt:將信號連接到插槽以啓動後臺操作
- 30. 如何將此信號連接到插槽
歡迎上計算器。發佈前請閱讀本文(http://stackoverflow.com/help/how-to-ask)。我已閱讀下面的線索評論,請爲您的問題提供一個最簡單的示例(http://stackoverflow.com/help/mcve)。此外花2分鐘來學習如何正確編輯你的文章(http://stackoverflow.com/editing-help)。你將有更大的機會得到答案。 – bibi