我有很多QLineEdit
在我的主窗口。我將每個對象的editingFinished()
SIGNAL
連接到我的QMainWindow
類中的單個SLOT
。 我想實現我自己的撤銷/重做功能。我找到了Qt撤消框架很難理解&複雜執行。 所以我想保留一個QList <QLineEdit *> undoList;
,它將存儲已修改的QLineEdit
的序列。我正在維護一個int
變量來跟蹤當前狀態。撤銷/重做完成後,我可以簡單地更新int
變量&找到QLineEdit
,該編輯狀態爲&,然後在QLineEdit
上調用undo()
。 目前我最大的問題是,因爲我已經將我所有的QLineEdit
都連接到了一個SLOT
,我不知道哪個QLineEdit
發出了SIGNAL
。 所以我想知道是否有什麼方法可以讓我明白哪個QLineEdit
發出SIGNAL
。 謝謝。如何識別哪個QObject在Qt中發出信號?
回答
在槽內使用sender()
得到發出連接到它的信號的QObject
。
yup在這裏找到了解決方案:http://stackoverflow.com/questions/5025089/how-to-know-which-qlineedit-emitted-the-editingfinished-inside-the-signal-hand?rq=1 – 2013-02-25 12:00:30
關於Qt撤消框架。 有沒有什麼好的網絡文章或者一些教程或者解釋Qt Undo Framework以及如何爲像我這樣的初學者實現它? 我很努力從4.8版本的Qt SDK中的2個例子中理解。您的幫助將是最受歡迎的。 謝謝:) – 2013-02-25 12:02:19
@CAD_coding我從內存中不知道任何東西,但是網絡上必須有非官方的東西,你必須做一些網絡拖網。 – cmannett85 2013-02-25 12:11:06
- 1. 如何在Qt中觸發信號
- 2. 如何從無法傳入QObject的類發出信號?
- 3. qt按鈕發出多個信號
- 4. Qt/C++如何在發出信號時等待一個插槽
- 5. 如何讓QGeoPositionInfoSource在iOS中使用Qt 5.5.1發出信號?
- 6. 如何識別在DataPager中點擊了哪個頁面號碼
- 7. 從pthread發送信號到QObject
- 8. 如何在其成員發出信號時發出信號?
- 9. Qt python如何知道QPushButton發送哪些信號?
- 10. 如何通過QWidget在Qt下發出objectNameChanged信號?
- 11. 信號分類 - 用AI識別信號
- 12. 在pyqt4 qobject類中連接pyqt4信號
- 13. 未收到Qt發出的信號
- 14. QT - 懸停QLabel時發出信號
- 15. 如何以Qt間隔發射信號?
- 16. 已發送/已發送短信:如何識別廣播屬於哪個SMS?
- 17. 如何在識別過程中改變未識別語音信號的長度?
- 18. 識別哪個標籤在qt中被點擊
- 19. 如何識別Django中的哪個ajax?
- 20. 如何識別我在哪個線程?
- 21. 如何識別某個Qt-widget?
- 22. 「程序接收信號:EXC_BAD_ACCESS」 - 如何識別觸發的線路?
- 23. 如何通過Qt中的幾個類對象發射信號?
- 24. Qt「信號未定義的參考錯誤」從QObject繼承後
- 25. 如何知道哪個QLineEdit在信號處理程序中發出了editingFinished()?
- 26. 的Qt:發射信號
- 27. 系統如何識別哪個應用正在發送請求?
- 28. 如何識別Python中的QListWidget/Qt
- 29. Qt如何傳輸信號?
- 30. 在派生的QObject構造函數中連接Qt信號和插槽
可能重複[如何知道哪個QLineEdit在信號處理程序中發出editingFinished()?](http://stackoverflow.com/questions/5025089/how-to-know-which-qlineedit-emitted-the-編輯完成,在信號手中) – 2013-02-25 12:14:04
@BЈовић謝謝你。 – 2013-02-25 12:22:27