Widgets 是在 Qt 中創建用戶界麵的首要元素。 小部件 可以顯示數據和狀態信息,接收用戶輸入,及為應被分組在一起的其它 Widget 提供容器。未嵌入到父級 Widget 中的 Widget,稱為 window .
The QWidget 類提供渲染到屏幕及處理用戶輸入事件的基本功能。Qt 提供的所有 UI 元素是子類化的 QWidget ,或被用於連接 QWidget 子類。創建自定義 Widget 的完成,是通過子類化 QWidget 或適當子類並重實現虛擬事件處理程序。
布局 是在容器中自動排列子級 Widget 的優雅 靈活方式。每個 Widget 嚮布局報告其尺寸要求透過 sizeHint and sizePolicy 特性,且布局會相應地分配可用空間。
|
|
Qt Designer 是交互創建和在布局中排列 Widget 的強大工具。
樣式 代錶 Widget 繪製,並封裝 GUI 的外觀和感覺。Qt 的內置 Widget 使用 QStyle 類來履行其幾乎所有繪製,確保看起來準確像等效本機 Widget。
|
|
|
Qt 樣式錶 是允許定製 Widget 外觀的強大機製,除瞭可能已有的,通過子類化 QStyle .
下列章節列錶 Widget 類。見 Qt Widget 圖庫 舉的一些範例。
這些基本 Widget (控件),如按鈕 組閤框及滾動條,被設計為可直接使用。
|
|
|
|
|
|
| QCheckBox | 帶文本標簽的復選框 |
| QComboBox | 組閤按鈕和彈齣列錶 |
| QCommandLinkButton | Vista 風格的命令鏈接按鈕 |
| QDateEdit | 用於編輯日期的 Widget (基於 QDateTimeEdit 小部件) |
| QDateTimeEdit | 用於編輯日期和時間的 Widget |
| QDial | 四捨五入範圍控製 (像速度計或電位計) |
| QDoubleSpinBox | 采用雙精度的自鏇框 Widget |
| QFocusFrame | 聚焦框可以在 Widget 的正常可描繪區域之外 |
| QFontComboBox | 讓用戶選擇字體係列的組閤框 |
| QLCDNumber | 顯示帶有類似 LCD 數字的數字 |
| QLabel | 顯示文本或圖像 |
| QLineEdit | 一行文本編輯器 |
| QMenu | 用於菜單欄、上下文菜單及其它彈齣菜單的菜單 Widget |
| QProgressBar | 水平 (或垂直) 進度條 |
| QPushButton | 命令按鈕 |
| QRadioButton | 帶文本標簽的單選按鈕 |
| QScrollArea | 把視圖捲動到另一 Widget |
| QScrollBar | 垂直 (或水平) 滾動條 |
| QSizeGrip | 用於重置頂層窗口大小的重置大小手柄 |
| QSlider | 垂直 (或水平) 滑塊 |
| QSpinBox | 自鏇框 Widget |
| QTabBar | 選項卡欄 (如:用於選項卡式對話框) |
| QTabWidget | 選項卡式 Widget 的堆棧 |
| QTimeEdit | 用於編輯時間的 Widget (基於 QDateTimeEdit 小部件) |
| QToolBox | 選項卡化 Widget 項的列 |
| QToolButton | 命令 (或選項) 的快速訪問按鈕,通常用於 QToolBar |
| QWidget | 所有用戶界麵對象的基類 |
高級 GUI Widget (如:選項卡小部件和進度條),提供更復雜的用戶界麵控件。
|
|
|
| Phonon::VideoWidget | Widget that is used to display video |
| QCalendarWidget | 允許用戶選擇日期,基於月份的日曆 Widget |
| QColumnView | 列視圖的模型/視圖實現 |
| QDataWidgetMapper | 在數據模型區間與 Widget 之間的映射 |
| QDesktopWidget | 對多頭係統屏幕信息的訪問 |
| QListView | 在模型中的列錶或圖標視圖 |
| QMacCocoaViewContainer | Widget for Mac OS X that can be used to wrap arbitrary Cocoa views (i.e., NSView subclasses) and insert them into Qt hierarchies |
| QMacNativeWidget | Widget for Mac OS X that provides a way to put Qt widgets into Carbon or Cocoa hierarchies depending on how Qt was configured |
| QTableView | 錶格視圖的默認模型/視圖實現 |
| QTreeView | 樹視圖的默認模型/視圖實現 |
| QUndoView | 顯示 QUndoStack 的內容 |
| QWSEmbedWidget | Enables embedded top-level widgets in Qt for Embedded Linux |
| QWebView | 用於查看和編輯 Web 文檔的 Widget |
| QX11EmbedContainer | XEmbed container widget |
| QX11EmbedWidget | XEmbed client widget |
|
|
像分割器、選項卡欄、按鈕組等類用於組織和分組 GUI 圖元成更復雜應用程序和對話框。
| QButtonGroup | 用於組織按鈕 Widget 組的容器 |
| QGroupBox | 帶標題的分組框框架 |
| QSplitter | 實現分割器 Widget |
| QSplitterHandle | Handle functionality of the splitter |
| QStackedWidget | 每次僅一 Widget 可見的 Widget 堆棧 |
| QTabWidget | 選項卡式 Widget 的堆棧 |
抽象 Widget 類是基類。它們不能作為獨立類使用,但提供功能當子類化它們時。
| QAbstractButton | 按鈕 Widget 抽象基類,為按鈕提供共有功能 |
| QAbstractScrollArea | 帶按需滾動條的捲動區域 |
| QAbstractSlider | 在範圍內的整數值 |
| QAbstractSpinBox | Spinbox 和顯示值的行編輯 |
| QDialog | 對話框窗口的基類 |
| QFrame | 可以擁有框架的 Widget 基類 |