鍍金池/ 教程/ C/ MainWindow
Qt 容器和算法拾遺
自定義 model 之一
反走樣
Hello, world!
Qt 容器類之關(guān)聯(lián)存儲容器
QStringListModel
拖放技術(shù)之一
狀態(tài)欄
QTreeWidget
拖放技術(shù)之二
通用算法
event()
Qt 學習之路(18): Qt 標準對話框之 QInputDialog
Qt 容器類之遍歷器和隱式數(shù)據(jù)共享
QListWidget
Meta-Object 系統(tǒng)
事件接收與忽略
Qt 學習之路(tip): parent 參數(shù)
Qt 標準對話框之 QColorDialog
QPainter(續(xù))
國際化(下)
漸變填充
自定義委托
創(chuàng)建 shared library
model-view 架構(gòu)
Graphics View Framework
自定義拖放數(shù)據(jù)對象
QSortFilterProxyModel
國際化(上)
組件布局
自定義 Model 之三
事件過濾器
QDirModel
Hello, world!(續(xù))
Qt 標準對話框之 QFileDialog
自定義 model 之二
深入了解信號槽
坐標變換
剪貼板操作
QTableWidget
QByteArray 和 QVariant
創(chuàng)建一個對話框(下)
Qt 學習之路(32): 一個簡易畫板的實現(xiàn)(Graphics View)
文本文件讀寫
自定義事件
編寫跨平臺的程序
MainWindow
初探信號槽
Qt 學習之路(17): Qt 標準對話框之 QMessageBox
繪圖設備
菜單和工具條(續(xù))
二進制文件讀寫
QString
事件(event)
菜單和工具條
QPainter
Qt 容器類之順序存儲容器
進程間交互
API 文檔的使用
創(chuàng)建一個對話框(上)
一個簡易畫板的實現(xiàn)(QWidget)

MainWindow

盡管 Qt 提供了很方便的快速開發(fā)工具 QtDesigner 用來拖放界面元素,但是現(xiàn)在我并不打算去介紹這個工具,原因之一在于我們的學習大體上是依靠手工編寫代碼,過早的接觸設計工具并不能讓我們對 Qt的概念突飛猛進……

前面說過,本教程很大程度上依照的是《C++ GUI Programming with Qt4, 2nd Edition》這本書。但是,這本書中接下來的部分用了很大的篇幅完成了一個簡單的類似 Excel 的程序。雖然最終效果看起來很不錯,但我并不打算完全依照這個程序來,因為這個程序太大,以至于我們在開始之后會有很大的篇幅接觸不到能夠運行的東西,這無疑會嚴重打擊學習的積極性——至少我是如此,看不到做的東西很難受——所以,我打算重新組織一下這個程序,請大家按照我的思路試試看吧!

閑話少說,下面開始新的篇章!

就像 Swing 的頂層窗口一般都是 JFrame 一樣,Qt 的 GUI 程序也有一個常用的頂層窗口,叫做MainWindow。好了,現(xiàn)在我們新建一個 Gui Application 項目 MyApp,注意在后面選擇的時候選擇Base Class是 QMainWindow。

http://wiki.jikexueyuan.com/project/learn-road-qt/images/15.png" alt="" />

然后確定即可。此時,QtCreator 已經(jīng)為我們生成了必要的代碼,我們只需點擊一下 Run,看看運行出來的結(jié)果。

http://wiki.jikexueyuan.com/project/learn-road-qt/images/16.png" alt="" />

一個很簡單的窗口,什么都沒有,這就是我們的主窗口了。

MainWindow 繼承自 QMainWindow。QMainWindow 窗口分成幾個主要的區(qū)域:

http://wiki.jikexueyuan.com/project/learn-road-qt/images/17.png" alt="" />

最上面是 Window Title,用于顯示標題和控制按鈕,比如最大化、最小化和關(guān)閉等;下面一些是 Menu Bar,用于顯示菜單;再下面一點事 Toolbar areas,用于顯示工具條,注意,Qt 的主窗口支持多個工具條顯示,因此這里是 ares,你可以把幾個工具條并排顯示在這里,就像 Word2003 一樣;工具條下面是 Dock window areas,這是??看翱诘娘@示區(qū)域,所謂??看翱诰褪窍?Photoshop 的工具箱一樣,可以在主窗口的四周顯示;再向下是 Status Bar,就是狀態(tài)欄;中間最大的 Central widget就是主要的工作區(qū)了。

好了,今天的內(nèi)容不多,我們以后的工作就是要對這個 MainWindow 進行修改,以滿足我們的各種需要。

本文出自 “豆子空間” 博客,請務必保留此出處 http://devbean.blog.51cto.com/448512/194031

上一篇:QByteArray 和 QVariant下一篇:QTableWidget