第5講QT布局管理_第1頁
第5講QT布局管理_第2頁
第5講QT布局管理_第3頁
第5講QT布局管理_第4頁
第5講QT布局管理_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1第5講布局管理C++

GUI

QT4編程第1頁11分分割割窗窗口口QQSSpplliitttteerr類類22停??靠看按翱诳赒QDDoocckkWWiiddggeett類類33

堆堆棧棧窗窗體體QQSSttaacckkeeddWWiiddggeett類類44基基本本布布局局((QQLLaayyoouutt))C++

GUI

QT4編程主要內(nèi)容2第2頁3第3頁介紹一個十分簡單的分割窗口功能,整個對話框由三個窗口組成,各個窗口之間的大小可隨意拖曳改變,效果如圖1所示。C++

GUI

QT4編程1

分割窗口QSplitter類(1)新建空白項目,添加主函數(shù),項目名稱為“Splitter”。(代碼見例1)(2)在上述工程的“main.cpp”文件中添加代碼。(3)在“main.cpp”文件的開始部分加入以下頭文件:#include<Qsplitter>#include<QTextEdit>#include<QTextCodec>(4)運行程序,顯示效果如圖1所示。4C++

GUI

QT4編程1

分割窗口QSplitter類第4頁C++

GUI

QT4編程5第5頁7再再來來

個個例例子子。。一C++

GUI

QT4編程第7頁??看翱赒DockWidget類也是應(yīng)用程序中經(jīng)常用到的,設(shè)置停靠窗口的一般流程如下。(1)創(chuàng)建一個QDockWidget對象的停靠窗體。(2)設(shè)置此停靠窗體的屬性,通常調(diào)用setFeatures()及setAllowedAreas()兩種方法。(3)新建一個要插入停靠窗體的控件,常用的有QListWidget和QTextEdit。(4)將控件插入停靠窗體,調(diào)用QDockWidget的setWidget()方法。(5)使用addDockWidget()方法在MainWindow中加入此停靠窗體。C++

GUI

QT4編程2停靠窗口QDockWidget類8第8頁9下面通過一個簡單的例子來學(xué)習(xí)??看翱赒DockWidget類的使用,窗口1只可在主窗口的左邊和右邊停靠;窗口2只可在浮動和右部停靠兩種狀態(tài)間切換,并且不可移動;窗口3可實現(xiàn)??看翱诘母鞣N狀態(tài)。效果C++

GUI

QT4編程2??看翱赒DockWidget類如圖2所示。第9頁單擊播放視頻11態(tài),如圖3所示。第11頁(1)新建QtGui應(yīng)用,項目名稱為“DockWindows”,基類選擇“QMainWindow”,類名命名為“DockWindows”,取消“創(chuàng)建界面”復(fù)選框的選中狀C++

GUI

QT4編程2停靠窗口QDockWidget類(2)DockWindows類說明中只有一個構(gòu)造函數(shù)的說明。(3)打開“dockwindows.cpp”文件,DockWindows類構(gòu)造函數(shù)實現(xiàn)窗口的初始化及功能實現(xiàn),具體代碼所示。(4)在“dockwindows.cpp”文件的開始部分加入以下頭文件:#include<QTextEdit>#include<QDockWidget>(5)運行程序,顯示效果如視頻所示。C++

GUI

QT4編程2??看翱赒DockWidget類12第12頁效果如圖4所示。通過一個簡單的例子來學(xué)習(xí)堆棧窗體QStackedWidget類的使用,當(dāng)選擇左側(cè)列表框中不同的選項時,右側(cè)顯示所選的不同的窗體。在此使用列表框C++

GUI

QT4編程3堆棧窗體QStackedWidget類14QListWidget,第14頁單擊播放視頻16第16頁(1)新建QtGui應(yīng)用,項目名稱為“StackedWidget”,基類選擇“QDialog”,類名命名為“StackDlg”,取消“創(chuàng)建界面”復(fù)選框的選中狀態(tài),如圖5所示。C++

GUI

QT4編程3堆棧窗體QStackedWidget類17第17頁C++GUIQT4編程3堆棧窗體QStackedWidget類(2)打開“stackdlg.h”文件,添加如下加黑代碼:(3)打開“stackdlg.cpp”文件,在??看绑wStackDlg類的構(gòu)造函數(shù)中添加代碼。(4)在stackdlg.cpp文件的開始部分加入以下頭文件:#include<QHBoxLayout>(5)運行程序。C++

GUI

QT4編程3堆棧窗體QStackedWidget類18第18頁C++

GUI

QT4編程19第19頁Qt提供了QHBoxLayout類、QVBoxLayout類及QGridLayout類等的基本布局管理,分別是水平排列布局、垂直排列布局和網(wǎng)格排列布局。它們之間的繼承關(guān)系如圖20C++

GUI

QT4編程4

基本布局(QLayout)6所示。第20頁addWidget()方法用于向布局中加入需要布局的控件,addWidget()的函數(shù)原型如下:voidaddWidget(QWidget*widget,//需要插入的控件對象intfromRow,//插入的行intfromColumn,//插入的列introwSpan,//表示占用的行數(shù)intcolumnSpan,//表示占用的列數(shù)Qt::Alignmentalignment=0//描述各個控件的對齊方式21C++

GUI

QT4編程4

基本布局(QLayout)第21頁)addLayout()方法用于向布局中加入需要布局的子布局,addLayout()的函數(shù)原型如下:voidaddLayout(QLayout*layout,//表示需要插入的子布局對象introw,//插入的起始行intcolumn,//插入的起始列introwSpan,//表示占用的行數(shù)intcolumnSpan,//表示占用的列數(shù)Qt::Alignmentalignment=0//指定對齊方式)22C++

GUI

QT4編程4

基本布局(QLayout)第22頁本節(jié)將通過實現(xiàn)一個“用戶基本資料修改”的功能表來介紹如何使用基本布局管理,如QHBoxLayout類、QVBoxLayout類及QGridLayout類,效果如圖7所示。23C++

GUI

QT4編程4

基本布局(QLayout)第23頁本實例共用到四個布局管理器,分別是LeftLayout、RightLayout、BottomLayout和MainLayout,其布局框架如圖3.8所示。244

基本布局(QLayout)C++

GUI

QT4編程第24頁(1)新建QtGui應(yīng)用,項目名稱為“UserInfo”,基類選擇“QDialog”,取消“創(chuàng)建界面”復(fù)選框的選中狀態(tài)。(2)打開“dialog.h”頭文件,在頭文件中聲明對話框中的各個控件。添添加加代代碼碼所所示示。。添加如下的頭文件:#include<QLabel>#include<QLineEdit>#include<QComboBox>#include<QTextEdit>#include<QGridLayout>25C++

GUI

QT4編程4

基本布局(QLayout)第25頁(3)打開“dialog.cpp”文件,在類Dialog的構(gòu)造函函數(shù)數(shù)中中添添加加代代碼碼。。(4)在“dialog.cpp”文件的開始部分加入必要代碼。(5)編譯運行程序。26C++

GUI

QT4編程4

基本布局(QLayout)第26頁“dialog.h

”頭文件C++

GUI

QT4編程27第27頁C++

GUI

QT4編程28“dialog.pp”文件第28頁C++

GUI

QT4編程“dialog.c

pp

”文件29第29頁30第30頁C++

GUI

QT4編程“dialog.c

pp

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論