PyQt(Python+Qt)學習隨筆:QMainWindow的addDockWidget方法增加QDockWidget停靠窗到主窗口


DockWidget除了放在QMainWindow窗口內外,也可以放在其他類型的窗體如QWidget窗口內,但QMainWindow提供了與QDockWidget配套的特性如停靠區域,而其他窗口沒有配套特性,QDockWidget在其他窗口中也可以浮動,但拖拽時無法自動停靠,只能通過鼠標雙擊標題欄回到原始位置。

QMainWindow的addDockWidget方法用於將對應停靠窗增加到主窗口的指定區域,調用語法如下:

  • addDockWidget(Qt.DockWidgetArea area, QDockWidget dockwidget)
  • addDockWidget(Qt.DockWidgetArea area, QDockWidget dockwidget, Qt.Orientation orientation)

參數area用於指定QDockWidget對象的初始停靠區域,orientation確認標題欄是位於頂部水平方向,還是位於左邊豎直方向。

經老猿驗證發現:
  1. 如果addDockWidget的floating屬性是True,則停靠窗會漂浮在主窗口上面,但當雙擊停靠窗標題欄時就會將該停靠窗停靠到參數area指定區域;
  2. addDockWidget的area參數不是總會起作用,要具體看看QDockWidget對象的大小以及當前主窗口的其他QDockWidget對象的排列情況,如一個比較大的浮動窗是不能放置在左邊或右邊區域,只能在頂部和底部區域;
  3. 如果一個QDockWidget對象未調用addDockWidget添加到主窗口中,則在主窗口的快捷菜單中無法看到該QDockWidget對象,也不能雙擊鼠標將該停靠窗由浮動改為駐留狀態;
    4.addDockWidget可以重復調用,后續調用將改變前面調用的效果,即該方法不但可以將浮動窗口增加到主窗口對應浮動區域中,而且還可以用來改變浮動窗的浮動位置和標題欄方向 。

老猿Python,跟老猿學Python!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM