2011-12-07 202 views
2

如果/當用戶最大化或取消最大化(浮動)QMainWindow,我需要一些C++代碼才能觸發僅限。如果需要的話,該程序仍然可以在沒有這些額外的代碼的情況下運行,但具有該功能肯定會有助於美學。基本上,如果窗口最大化,GUI中的主分離器應該爲25%,如果未被最大化,則應該爲50%。 (默認浮動窗口狀態)Qt:QMainWindow最大化/最小化時觸發代碼

現在,用戶需要手動拖動它,如果他們想要更多的空間,並且分離器一側的大部分屏幕空間被浪費了,因爲QSplitter要默認爲50%,無論窗口大小。這很煩人,但它不會毀了你的一天,如果它發生。

我檢查QMainWindow是否有一個插槽用於檢查窗口的最大化狀態,但據我所知沒有。如何才能做到這一點?

回答

1

我不確定如何做到這一點,但您可能需要考慮從「最大化」切換到「還原下來」(反之亦然)並不能保證窗口大小的顯着變化,如果用戶在最大化之前已經把窗戶拉得很大。如果您確實找到了接收這些事件的方法,那麼在進行調整之前,您可能仍然希望檢查實際的窗口大小。

您可能只想處理調整大小事件以進行調整,這將允許您處理用戶手動拉伸或縮小窗口(以及最大化或恢復時)的情況。我不知道我會發現,行爲用戶滿意然而所以也許提供它作爲一個配置項:)