我有一個對象,其狀態由用戶通過QDialog
控制。在對話窗口中有很多QLineEdit
s,QRadioButton
s和其他東西。我在對象中創建了slots
,並將它與小部件中的signals
連接起來。 Everythig工作正常,只要我按下小部件,對象的狀態就會改變。現在我已經添加了ok
和cancel
按鈕,並且我希望僅在單擊ok
按鈕後才能更改對象狀態,而按下cancel
按鈕時不會更改它。那麼,是否有可能從零件中捕獲信號並在點擊時點擊ok
按鈕或點擊時抑制它們。cancel
按鈕被點擊。我正在使用Qt 5.2.1
抑制信號並在稍後發出
1
A
回答
0
你不能輕易做到這一點。另外我認爲在信號級別解決這個問題是錯誤的。
您應該緩存這些值並將它們設置爲ok(不取消)。或者您可以直接從小部件讀取值,並以相同的方式將它們傳遞給對象,而無需緩存。
你在建立一個設置對話框嗎?
+0
是的,它是一些情節的設置對話框。當創建對話框時,它從圖中讀取參數,並使用該值構造小部件。我不想讀取所有小部件的值並將它們應用於繪圖,因爲在這種情況下,所有繪圖都將重繪。我只想重繪那些參數已經改變的圖。 – lnk
+0
然後將新值與圖的當前值進行比較,並僅在更改後才設置它們。如果可能的話,最好的做法是將這個值更改檢查集成到plot setter方法中。 – Silicomancer
相關問題
- 1. 在Gtk.ToggleButton.set_active上抑制信號
- 2. 斷開並稍後重新連接Qt信號
- 3. 如何在其成員發出信號時發出信號?
- 4. 創建併發出GTK信號
- 5. 發出SIGNAL信號?
- 6. 抑制輸出
- 7. Android - 保存路徑並稍後繪製
- 8. 複製選擇並稍後粘貼它
- 9. 抑制藍牙發現彈出
- 10. 在R中抑制輸出
- 11. 抑制信息報告
- 12. 信號處理:開窗信號可以改善阻帶抑制,爲什麼?
- 13. 信號量併發性
- 14. 抑制輸出MATLAB
- 15. 抑制IRB輸出?
- 16. log4j輸出抑制?
- 17. 發送控制信號?
- 18. xmonad並稍後閱讀
- 19. 如何在視圖完成並返回時發出信號?
- 20. QRunnable發出信號並從插槽獲取發件人
- 21. 強制QListWidget信號在發射區
- 22. 稍後發送消息
- 23. 稍後發佈帖子
- 24. 使用後臺服務發送短信並通過短信發送IMEI號碼
- 25. 稍後添加控制器
- 26. React onClick稍後發送垃圾郵件隊列並觸發?
- 27. QVector發生變化時發出信號
- 28. AutoResetEvent發出信號之前觸發
- 29. 如何取消合併(稍後合併)
- 30. 抑制Gradle的JavaExec輸出
在窗口小部件的插槽中,例如LineEdit或QRadiobutton你必須暫時儲存國家。點擊確定按鈕後,您可以將數據寫入持久性存儲或類似的東西。取消按鈕丟棄所有臨時數據。 – Matthias