您能告訴我如何確定由用戶啓動的QMainWindow關閉事件與Linux中的SIG_KILL異常終止或Windows中的TerminateProcess()異常終止?
這是因爲存在緊迫性的差異。
我可以拒絕用戶關閉或用戶可以認爲只要需要。
但是,我必須儘快保存中間結果和當前狀態,當中止或直到用戶將做下一個致命的中止嘗試。
我可以嘗試弄清楚分析closeEvent()上的鼠標位置。但這取決於任務欄的外觀。我可以將應用程序設置爲非最小化狀態並等待下一個用戶操作。但是這在墮胎案中並不是一個好的行爲。用戶可以嘗試下一個致命的中止操作,否則保存的時間將會丟失。
最好的問候,根納季Qt QMainWindow用戶關閉和系統中止之間的區別
0
A
回答
2
如果應用程序接收到SIGKILL
,它不會有任何時間做任何事情。它當場被終止。您無法捕捉或阻止該信號。因此,您無法將SIGKILL與正常應用程序關閉「區分開來」:您無法知道何時被強行殺死。 (TerminateProcess()
也是如此。)
如果您在正常應用程序關閉期間需要執行某些操作,則應將清理例程連接到QCoreApplication::aboutToQuit()
信號。檢查文檔,這正是它的設計目的。
相關問題
- 1. 的Qt的QMainWindow在關閉
- 2. 系統和shell_exec之間的區別
- 3. RL_ARM的TCP模式關閉和中止之間的區別
- 4. 關閉和延續之間的區別
- 5. 關閉和lambda之間的區別?
- 6. Vim中的文件>關閉和關閉之間的區別
- 7. 系統分區和系統分區中的priv-app之間的區別
- 8. dreload()和autoreload之間的關係/區別
- 9. 'view'和'base'關係之間的區別
- 10. 用戶與內核之間的區別系統調用
- 11. Windows管理員用戶和Windows系統用戶之間的區別是什麼
- 12. javaScript中關閉模塊和關閉模塊之後'()'或'(otherModule)'之間的區別
- 13. 系統時間和存儲時間之間的區別
- 14. qt和PyQt4之間的區別
- 15. unix系統中的python - getmtime()和getctime()之間的區別
- 16. 系統verilog中的結構和聯合之間的區別
- 17. 使用PHP的用戶緩存和系統緩存之間的區別APC
- 18. 中止和回滾之間的區別?
- 19. 停止調試與關閉窗體之間的區別
- 20. 通用操作系統和軟實時操作系統之間的區別?
- 21. 命令,函數和系統調用之間的區別
- 22. 系統調用:sys_exit(),SYS_exit和exit()之間的區別
- 23. 查找與關係之間的區別
- 24. Rails:建立關係之間的區別
- 25. QAudioInput bufferSize()和bytesReady()之間的關係QT
- 26. 模塊和封閉之間的區別
- 27. 操作系統中頁面和塊之間有什麼區別?
- 28. Clojure中str和print-str之間的區別/關係
- 29. Linux操作系統和移動操作系統之間的根本區別(android)
- 30. 搜索引擎的相關性排名和推薦系統之間的區別
如果您有新問題,請提出新問題。 – Mat