0
我以前的問題是沒有答案,所以讓我重組你的問題:的Qt - 允許停靠即使QMainWindow的太小
是否有可能使一個QMainWindow
接受QDockWidget
的對接,無論小部件和窗口的大小?
目前,如果窗口太小而不能適應QDockWidget
的最小尺寸,它將不會對接。如果主窗口適合小部件,這將是理想的。
在此先感謝!
我以前的問題是沒有答案,所以讓我重組你的問題:的Qt - 允許停靠即使QMainWindow的太小
是否有可能使一個QMainWindow
接受QDockWidget
的對接,無論小部件和窗口的大小?
目前,如果窗口太小而不能適應QDockWidget
的最小尺寸,它將不會對接。如果主窗口適合小部件,這將是理想的。
在此先感謝!
我上次對你的問題有一些想法,但我認爲我的解決方案並不理想。所以如果你還在掙扎,我會盡力回答。
其實沒有任何問題讓鼠標進入事件和調整您的主窗口。問題是,當您從主窗口的外部拖動QDockWidget
時,後者失去焦點並且無法處理該事件。
我的想法是在您的QDockWidget
上安裝事件過濾器。在其實施中,您應跟蹤QDockWidget
移動和全局光標位置(QCursor::pos()
)。如果光標當前位於主窗口中並且QDockWidget
正在移動,則表示您已將QDockWidget
拖動到主窗口上,並且如果其大小小於某個最小尺寸,則應調整其大小。
有人會認爲Qt應該有這個功能。畢竟它看起來像是一個邏輯特徵。特別是當你以編程方式向窗口添加小部件(如'addDockWidget(Qt :: LeftDockWidgetArea,widget)')時,窗口大小會調整。儘管如此,你的回答給了我一個方向。再次感謝。 – monoik 2012-07-18 06:58:38