您好,登錄后才能下訂單哦!
前言
這節課很重要。。界面整潔美觀與否就看布局了。。這里講布局方法,至于設計的天賦與最終界面的美感那就看造化了。。
本文主要講述Qt Designer工具實現界面控件布局管理,就是排列組合控件。包括水平布局、垂直布局、網格布局、表單布局。至于絕對布局太復雜。。短期內hold不住
布局管理打開方法
方法一:Qt Designer -> Form菜單欄
方法二:右鍵單擊主窗口 -> Lay out
四種布局管理介紹
(1)水平布局 Lay Out Horizontally:被選中的控件在水平方向上從左到右排列。雜亂無章的四個控件水平布局后效果如下:
(2)垂直布局 Lay Out Vertically:被選中的控件在垂直方向上依次排列。雜亂無章的四個控件垂直排列后效果如下:
(3)表單布局Lay Out in a Form:控件以2列的形式布局在表單中。左列包含標簽(label),右列包含輸入控件。 用戶名和密碼相關的四個控件組合表單布局。
(4)網格布局 Lay Out in a Grid:網格布局是將窗口分隔成行和列的網格來進行排列。被選中組合的控件以網格的形式排列。參考如下。。好像也不美觀。
嵌套布局
界面控件類型簡單可以考慮采用上述四種布局方式進行單一布局。但是控件類型多樣化的話就要考慮布局的嵌套了。就是分析控件的特點,采用不同布局方式組合控件。
如下主窗口中用戶名+密碼的標簽+單行輸入框控件組合使用表單布局,然后與登錄+退出控件使用垂直布局,最后與顯示文本框采用網格布局。具體效果如下
注意:組合控件使用的布局如果需要打破布局,可以通過選擇組合的控件,然后單擊菜單Form -> Break Layout方式進行打破布局。實際上使用撤銷也可以。
絕對布局管理
某些時候采用布局管理工具完成的界面設置并不滿足你的要求,可以考慮修改控件geometry屬性相對坐標及長、框的方式進行對齊。geometry屬性在PyQt中主要用來設置控件在窗口中的絕對坐標與控件自身的大小。如下圖所示。對于包含控件類型及個數不多的界面可以考慮采用這種方式。
下面針對這幾個控件的對齊簡單描述一下。
第一行中"獲取整數"按鈕與"lineEdit"兩個控件對齊:控件Y軸數值、Height長度值保持一致。控件間隔通過計算獲取。這里兩個控件間隔為150-80-50=30
第一列"獲取整數"和"獲取字符串"控件對齊:保持X軸數值、Width數值一致。列間間距為80-31-30=19。這樣"獲取列表選項"控件也以間距19保持即可。
是不是很簡單?如果覺得布局管理出來效果不好,就動手嘗試一下這種方法把。。
其他布局管理
1、采用絕對布局的方式進行控件布局。但是這種上手難度比較大,后面在實踐過程中遇到有好的方法可以針對Qt界面布局管理后的效果進行優化的再補充介紹。
2、修改控件屬性。通過修改控件的屬性,比如最小尺寸、最大尺寸、長、寬、字體等等。比如我想針對小工具的需求我會經常使用固定最小尺寸、最大尺寸保持一致的方式,使主窗口及控件不受拉伸影響。
小結
本文針對Qt Designer布局管理中的水平布局、垂直布局、網格布局以及表單布局的最最基本的使用方法和布局效果進行了基本介紹。內容都很簡單,看完也很容易自己動手實踐一下。當然還有很多其他輔助的方式(比如添加水平線、垂直線等)可以幫助完成界面更合理的布局,這個需要后面再進行探索。。有新的理解或者內容后續再更新本文。期望自己可以布局一個還能過的去的界面。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。