QT 5 9 8 UI介面控制項介紹

2022-09-22 00:21:09 字數 1266 閱讀 2176

布局管理器

所謂 gui 介面,歸根結底,就是一堆元件的疊加。我們建立乙個視窗,把按鈕放上面,把圖示放上面,這樣就成了乙個介面。在放置時,元件的位置尤其重要。我們必須要指定元件放在**,以便視窗能夠按照我們需要的方式進行渲染。這就涉及到元件定位的機制。

qt 提供了兩種元件定位機制:絕對定位和布局定位。

絕對定位就是一種最原始的定位方法:給出這個元件的座標和長寬值。

這樣,qt 就知道該把元件放在**以及如何設定元件的大小。但是這樣做帶來的乙個問題是,如果使用者改變了視窗大小,比如點選最大化按鈕或者使用滑鼠拖動視窗邊緣,採用絕對定位的元件是不會有任何響應的。這也很自然,因為你並沒有告訴 qt,在視窗變化時,元件是否要更新自己以及如何更新。或者,還有更簡單的方法:禁止使用者改變視窗大小。但這總不是長遠之計。

布局定位:你只要把元件放入某一種布局,布局由專門的布局管理器進行管理。當需要調整大小或者位置的時候,qt 使用對應的布局管理器進行調整。

布局定位完美的解決了使用絕對定位的缺陷。

qt 提供的布局中以下三種是我們最常用的:

qhboxlayout:按照水平方向從左到右布局;

qvboxlayout:按照豎直方向從上到下布局;

qgridlayout:在乙個網格中進行布局,類似於 html 的 table;

qt ui介紹:

彈簧的作用:例如新增乙個按鈕之後再水平布局會發生變化(被拉伸),彈簧的作用就是固定

按鈕就字面意思,自己拖拽試試就知道了

下面是容器內的東西:

第乙個:group box類似於win7的日曆框

第三個:tool box類似於qq的好友列表

第四個:tab widget類似於

訪問UI介面控制項

多工的處理有兩種不同的型別 基於程序和基於執行緒。理解這兩者間的區別很重要。乙個程序 process 本質上乙個正在執行的程式。因此,基於程序的多工處理 process based multitasking 允許計算機同時執行兩個或多個程式。例如,在我們使用電子 或瀏覽 internet 的同時,還...

遍歷Qt介面控制項

2021 0408 最近發現qt中有乙個函式可以遍歷某種型別的介面控制項 qlistbtns findchildren 預設就是遞迴呼叫的,所以,如果只是提取某一類控制項,可以採用這種方式 檢視了網路上常用的遍歷控制項 很有啟發,不過,因為qt介面類往往有很多層,用網上提到的方法通常只能遍歷一層,也...

Qt學習 將ui介面中的預設控制項提公升為自定義類

自定義控制項在動態新增到介面時很容易,只要new就可以了。當然在mainwindow的介面中要動態新增控制項還是有問題的,跟普通的視窗不一樣。普通視窗只需要new乙個layout,然後將在這個layout裡新增控制項即可,如下 qhboxlayout layout new qhboxlayout t...