


有時(shí)候布局中的控件無(wú)法完全表明,或是我希望子控件能臨時(shí)占有更多表明室內空間,最后我們需要使用另一個(gè)布局管理方法分割器。
當鼠標移動(dòng)到子控件間的間隔線(xiàn)時(shí),電腦鼠標就會(huì )變成下列樣子
3.3.1 QSplitter1 childrenCollapsible 子控件能不能伸縮?
2 handleWidth 分割線(xiàn)總寬。
3 opaqueResize 是不是馬上更改尺寸。
true-默認設置前提下,當拖拽分割線(xiàn)時(shí),控件隨分割線(xiàn)運行。false-拖拽分割線(xiàn)時(shí),僅有分割線(xiàn)挪動(dòng),松掉電腦鼠標后,控制器才可以更改尺寸。4 orientation 切分方位,水準或豎直。
3.3.2.1 saveState()和restoreState()
維持系統狀態(tài)和修復之前情況。在我們應用分割器時(shí),很多控制器大小會(huì )發(fā)生改變,當我們要想修復一定的狀態(tài)下,大家可以用這倆函數公式。
如果你開(kāi)發(fā)軟件再度打開(kāi)后,要想恢復正常上一次的布局界面,那也可以用這倆函數公式,隱私功能,我在下文的事例中來(lái)給大家演試。
3.3.2.2 sizes()和setSizes()
在分割器中獲得和設定每一個(gè)控件的間距或高度。
假如分割器是水準的,則每一個(gè)控制器的總寬將從左往右設定。假如分割器是垂直,則每一個(gè)控制器的高度將從上向下設定。
頁(yè)面上的附加值被忽略了。假如頁(yè)面上數值過(guò)小,則結論不界定,但程序流程依然非常好。
分割器整體的規格影響不大。反過(guò)來(lái),控件中分布著(zhù)一切附加/缺乏的室內空間,依據的尺寸相對性?xún)糁兀ㄉ炜s式因素)。
若特定規格為0,則控件將看不到。
保存控件尺寸對策。也就是說(shuō),低于控件較小的規格提醒值要被提醒值所替代。
3.3.3.1 顯隱控件
當掩藏一個(gè)控件時(shí),它室內空間將分給別的控件。當它們再度表明時(shí),這將被修復。
3.3.3.2 布局器與分割器對比
在QSplitter不可以直接加上QLayout是的,主要是因為QSplitter承繼自QFrame的,而QLayout承繼自QObject和QLayoutItem是的,布局是一套優(yōu)化算法,QSplitter是對話(huà)框控件,無(wú)法直接加上,僅有布局才可以加上子布局。
由于QSplitter是窗子控制器,完全可以用setLayout()進(jìn)而使QSplitter做為QLayout成員變量進(jìn)而使用addWidget()取代。