1. 程式人生 > >QT學習筆記1---佈局管理器

QT學習筆記1---佈局管理器

QT4定義了多個模組,每個模組包含相對獨立的庫檔案並實現各自相應的功能。
其主要模組有:
QtCore:QT4的基本模組,定義了其他模組使用的Qt核心的非GUI類,所有的其他模組均依賴於它。
QtGui:圖形使用者介面類
QtNetwork:網路程式設計類
QtOpenGL:OpenGL支援類
QtSql:訪問資料庫的類
QtUiTools:ui類
vertival:垂直的。垂直佈局管理器QVBoxLayout
horizontal:水平的。水平佈局管理器QHBoxLayout
練習:

#include <QtGui/QApplication>

#include <QtGui/QWidget>

#include <QtGui/QLabel>

#include <QtCore/QTextCodec>

#include <QtGui/QPushButton>

#include <QtGui/QVBoxLayout>

//解釋:

//包含QApplication,QWidget,QLabel,QTextCodec,QPushButton,QVBoxLayout類

int main(int argc, char *argv[])

{

QApplication app(argc ,argv);

//建立一個QApplication的物件app,並將使用者在控制檯輸入的引數傳遞給該應用程式物件。

QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));

//設定QObject::tr()使用的字符集,若是英文,可省略

QWidget *pWidget = new QWidget;

//建立QWidget類的一個物件pWidget

QLabel label(pWidget);

//建立QLabel類的一個物件label,它的父視窗是pWidget,也就是QWidget,視窗部件類

label.setText(QObject::tr("同一個世界,同一個夢想!"));

//顯示標籤物件label的文字內容"同一個世界,同一個夢想!"

QPushButton *btn = new QPushButton(QObject::tr("關閉"),pWidget);

//建立按鈕類的一個物件btn,名字為"關閉",父視窗為pWidget

QVBoxLayout *layout = new QVBoxLayout;

//建立一個佈局管理器類 layout

layout->addWidget(&label);

layout->addWidget(btn);

//通過呼叫QVBoxLayout::addWidget()函式,將label和btn裝入layout

pWidget->setLayout(layout);

//通過呼叫QWidget::setLayout()函式,將layout佈局管理器類新增到視窗部件物件pWidget中

QObject::connect(btn,SIGNAL(clicked()),pWidget,SLOT(close()));

//將關閉按鈕btn的clicked()訊號同窗口部件pWidget的close()函式關聯起來。

pWidget->show();

//顯示視窗部件物件pWidget

return app.exec();

//返回app的結果並退出.QApplication::exec()函式的執行使得QtGui進入一個主事件迴圈,直到程式呼叫exit(),close()等函式.

}