這節課很重要。。界面整潔美觀與否就看佈局了。。這裏講佈局方法,至於設計的天賦與最終界面的美感那就看造化了。。工具
本文主要講述Qt Designer工具實現界面控件佈局管理,就是排列組合控件。包括水平佈局、垂直佈局、網格佈局、表單佈局。至於絕對佈局太複雜。。短時間內hold不住佈局
方法一:Qt Designer -> Form菜單欄字體
方法二:右鍵單擊主窗口 -> Lay out優化
(1)水平佈局 Lay Out Horizontally:被選中的控件在水平方向上從左到右排列。雜亂無章的四個控件水平佈局後效果以下:spa
(2)垂直佈局 Lay Out Vertically:被選中的控件在垂直方向上依次排列。雜亂無章的四個控件垂直排列後效果以下:設計
(3)表單佈局Lay Out in a Form:控件以2列的形式佈局在表單中。左列包含標籤(label),右列包含輸入控件。 用戶名和密碼相關的四個控件組合表單佈局。orm
(4)網格佈局 Lay Out in a Grid:網格佈局是將窗口分隔成行和列的網格來進行排列。被選中組合的控件以網格的形式排列。參考以下。。好像也不美觀。blog
界面控件類型簡單能夠考慮採用上述四種佈局方式進行單一佈局。可是控件類型多樣化的話就要考慮佈局的嵌套了。就是分析控件的特色,採用不一樣佈局方式組合控件。字符串
以下主窗口中用戶名+密碼的標籤+單行輸入框控件組合使用表單佈局,而後與登陸+退出控件使用垂直佈局,最後與顯示文本框採用網格佈局。具體效果以下it
注意:組合控件使用的佈局若是須要打破布局,能夠經過選擇組合的控件,而後單擊菜單Form -> Break Layout方式進行打破布局。實際上使用撤銷也能夠。
某些時候採用佈局管理工具完成的界面設置並不知足你的要求,能夠考慮修改控件geometry屬性相對座標及長、框的方式進行對齊。geometry屬性在PyQt中主要用來設置控件在窗口中的絕對座標與控件自身的大小。以下圖所示。對於包含控件類型及個數很少的界面能夠考慮採用這種方式。
下面針對這幾個控件的對齊簡單描述一下。
第一行中"獲取整數"按鈕與"lineEdit"兩個控件對齊:控件Y軸數值、Height長度值保持一致。控件間隔經過計算獲取。這裏兩個控件間隔爲150-80-50=30
第一列"獲取整數"和"獲取字符串"控件對齊:保持X軸數值、Width數值一致。列間間距爲80-31-30=19。這樣"獲取列表選項"控件也以間距19保持便可。
是否是很簡單?若是以爲佈局管理出來效果很差,就動手嘗試一下這種方法把。。
一、採用絕對佈局的方式進行控件佈局。可是這種上手難度比較大,後面在實踐過程當中遇到有好的方法能夠針對Qt界面佈局管理後的效果進行優化的再補充介紹。
二、修改控件屬性。經過修改控件的屬性,好比最小尺寸、最大尺寸、長、寬、字體等等。好比我想針對小工具的需求我會常常使用固定最小尺寸、最大尺寸保持一致的方式,使主窗口及控件不受拉伸影響。
本文針對Qt Designer佈局管理中的水平佈局、垂直佈局、網格佈局以及表單佈局的最最基本的使用方法和佈局效果進行了基本介紹。內容都很簡單,看完也很容易本身動手實踐一下。固然還有不少其餘輔助的方式(好比添加水平線、垂直線等)能夠幫助完成界面更合理的佈局,這個須要後面再進行探索。。有新的理解或者內容後續再更新本文。指望本身能夠佈局一個還能過的去的界面。。