有沒有辦法找到Qt應用程序中信號/插槽連接的總數有人向我介紹伽瑪射線,但有沒有更簡單的解決方案?信號/插槽連接的總數?
回答
This is a flag that can be combined with any one of the above connection types, using a bitwise OR. When Qt::UniqueConnection is set, QObject::connect() will fail if the connection already exists (i.e. if the same signal is already connected to the same slot for the same pair of objects). [...]
然後使用的情況下斷言的連接也存在,這將你的程序崩潰表明一個編程錯誤:
QLabel *label = new QLabel;
QLineEdit *lineEdit = new QLineEdit;
auto ok = QObject::connect(lineEdit, &QLineEdit::textChanged,
label, &QLabel::setText,
Qt::UniqueConnection);
Q_ASSERT(ok);
免責聲明:未經測試。
'bool ok = QObject :: connect'是錯誤的。返回類型是'QMetaObject :: Connection' - 它可以用於將來的診斷。 –
好吧,我想'運算符布爾()'處理。固定。 –
無論如何,您的解決方案不是一個答案,因爲您無法統計現有連接的數量。 –
- 1. Qt連接信號插槽
- 2. Qt連接信號插槽
- 3. .ui中的信號和插槽連接
- 4. 當調用時更改插槽中的信號插槽連接
- 5. QT連接插槽/信號不工作
- 6. Qt連接信號和插槽
- 7. Qt5:無法連接信號插槽
- 8. 如何將信號連接到插槽
- 9. 更改信號插槽連接順序
- 10. Qt將信號連接到插槽
- 11. 調試Qt信號,插槽和連接
- 12. qt,信號插槽沒有連接?
- 13. QObject ::連接沒有連接信號到插槽
- 14. PySide/Qt:將信號連接到插槽的參數太多?
- 15. 爲什麼連接的信號有參數但插槽沒有?
- 16. 信號和插槽連接的星號是什麼?
- 17. Qt中的型號信號插槽連接
- 18. Qt信號插槽:信號已發送,但未插入插槽
- 19. Qt對象::連接:沒有這樣的插槽信號主題插槽
- 20. 信號和插槽
- 21. QT信號/插槽
- 22. 信號插槽TabWidget
- 23. 當連接到信號時,PyQt向插槽發送參數
- 24. 無法在信號/插槽/連接例程中傳遞參數
- 25. 在子插件插槽上連接信號
- 26. 信號 - 循環內部的槽連接
- 27. Qt的信號槽連接 - QNetworkAccessManager
- 28. C++信號/插槽:插槽處理和最佳C++信號庫?
- 29. 連接(以不尋常的方式)的信號插槽
- 30. QT中的信號和插槽之間的連接如何?
您正在談論信號/插槽連接,對嗎?我調整了這個問題,因爲「連接」可能是數據庫或網絡。你是否想要計算Qt內部連接,還是隻計算你自己的對象?你需要什麼信息?可能有更好的解決方案。這有幫助嗎? http://stackoverflow.com/questions/2755694/determine-signals-connected-to-a-given-slot-in-qt –
感謝您的意見和編輯,我實際上正在尋找一種方法來檢查和檢查是否有是重複的連接,就像有些時候同一個信號/插槽對連接多次一樣。 – Nyaruko
@Nyaruko不是你的問題的答案,但如果你想避免重複,你可以使用'Qt :: UniqueConnection'標誌。順便說一句,GammaRay是開源的,你可以研究它的代碼。這是非常強大的工具。 –