Qt學習 分割視窗QSplitter類

2021-07-02 08:04:47 字數 1581 閱讀 6273

分割視窗在應用程式中經常用到,比如在類似資源管理器的視窗設計中:

下面用**實現上面視窗的設計:

1.建立專案時基類選擇qmainwindow,取消gernerate form核取方塊的選中狀態。

2.在main.cpp中編寫如下**:

view plain

copy to clipboard

#include "mainwindow.h"

#include 

#include 

#include 

intmain(

intargc, 

char

*argv)    

[cpp]view plain

copy

#include "mainwindow.h"

#include 

#include 

#include 

intmain(

intargc, 

char

*argv)    

解析:

1.qsplitter的構造方法:

qsplitter

*splittermain

=new

qsplitter(qt

::horizontal,0

);

第乙個引數通過qt::horizontal 和 qt::vertical來設定為水平分割或垂直分割。第二個設定0代表是主視窗,無父視窗。

不過子splitter設定的

new

qsplitter(qt

::vertical

,splittermain

);

代表主視窗是splittermain。則子splitter就被新增到splittermain中。

新增時為從左至右(或從上至下)新增;

2.新增qtextedit控制項。

qtextedit

*textleft

=new

qtextedit

(qobject

::tr(

"left

widget"

),splittermain

);

第乙個引數設定文字內容,第二個引數設定主窗體。

3.設定拖動時是否實時更新

splitterright

->setopaqueresize(

false

);

false為不實時更新——在拖動時候只顯示一條灰色的線條,在拖動到位並釋放滑鼠後再顯示分割條。預設為true——實時更新。

4.設定可伸縮控制項:

splittermain

->setstretchfactor(1,

1);

第乙個引數代表控制項序號,第乙個序號為0.後面引數0代表不可伸縮,非0代表可伸縮。

這裡設定右邊的可伸縮。當拉伸整個視窗時候,左邊保持原來寬度。

拉伸後,我們發現左邊的寬度不變。

Qt學習 分割視窗QSplitter類

分割視窗在應用程式中經常用到,比如在類似資源管理器的視窗設計中 下面用 實現上面視窗的設計 1.建立專案時基類選擇qmainwindow,取消gernerate form核取方塊的選中狀態。2.在main.cpp中編寫如下 include include include int main int a...

Qt學習 分割視窗QSplitter類

分割視窗在應用程式中經常用到,比如在類似資源管理器的視窗設計中 下面用 實現上面視窗的設計 1.建立專案時基類選擇qmainwindow,取消gernerate form核取方塊的選中狀態。2.在main.cpp中編寫如下 view plain copy to clipboard print?inc...

Qt學習 分割視窗QSplitter類

標籤 qt 2011 07 26 10 12 20574人閱讀收藏 舉報 meego 21 分割視窗在應用程式中經常用到,比如在類似資源管理器的視窗設計中 下面用 實現上面視窗的設計 1.建立專案時基類選擇qmainwindow,取消gernerate form核取方塊的選中狀態。2.在main.c...