Qt 是一個功能強大的跨平臺框架,提供了豐富的類庫來開發 GUI 和應用程序。以下是 ??Qt 中常用的核心類??,按模塊分類整理:
??1. GUI 和窗口管理??
類名 | 用途 | 示例場景 |
---|
??QWidget ?? | 所有 GUI 控件的基類(按鈕、窗口等) | 自定義窗口/控件 |
??QMainWindow ?? | 主窗口框架(帶菜單欄、狀態欄、工具欄) | 應用程序主界面 |
??QDialog ?? | 對話框基類(模態/非模態) | 彈出配置窗口、消息框 |
??QLabel ?? | 文本或圖片顯示控件 | 顯示文字、圖標 |
??QPushButton ?? | 按鈕控件 | 確認/取消操作 |
??QLineEdit ?? | 單行文本輸入框 | 用戶名、密碼輸入 |
??QComboBox ?? | 下拉選擇框 | 選擇國家、性別等 |
??QCheckBox ?? | 復選框 | 多選選項(如“記住密碼”) |
??QRadioButton ?? | 單選按鈕 | 性別選擇(男/女) |
??QTabWidget ?? | 標簽頁容器 | 多頁面切換(如瀏覽器標簽) |
??2. 布局管理??
類名 | 用途 |
---|
??QVBoxLayout ?? | 垂直布局(控件縱向排列) |
??QHBoxLayout ?? | 水平布局(控件橫向排列) |
??QGridLayout ?? | 網格布局(控件按行列排列) |
??QFormLayout ?? | 表單布局(標簽+輸入框兩列式) |
??3. 數據處理與模型/視圖??
類名 | 用途 |
---|
??QString ?? | Unicode 字符串類(Qt 中最常用的字符串處理) |
??QList ?? | 動態數組(類似?std::vector ) |
??QMap ?? | 鍵值對容器(類似?std::map ) |
??QFile ?? | 文件讀寫操作 |
??QJsonDocument ?? | JSON 數據解析與生成 |
??QSqlDatabase ?? | 數據庫連接管理(需?QT += sql ) |
??QSqlQuery ?? | 執行 SQL 語句 |
??QAbstractItemModel ?? | 模型/視圖架構的基類(用于數據綁定) |
??4. 繪圖與樣式??
類名 | 用途 |
---|
??QPainter ?? | 繪圖工具(繪制線條、形狀、文本等) |
??QPixmap ?? | 圖像處理(加載、縮放、保存圖片) |
??QPalette ?? | 控件調色板(修改背景色、文本色等) |
??QStyle ?? | 控件樣式定制(如暗黑模式) |
??5. 事件系統??
類名 | 用途 |
---|
??QEvent ?? | 事件基類(所有事件的父類) |
??QMouseEvent ?? | 鼠標事件(點擊、移動、滾輪) |
??QKeyEvent ?? | 鍵盤事件(按鍵按下/釋放) |
??QTimer ?? | 定時器(周期性觸發事件) |
??6. 多線程與網絡??
類名 | 用途 |
---|
??QThread ?? | 線程管理(多線程編程) |
??QMutex ?? | 線程鎖(防止資源競爭) |
??QNetworkAccessManager ?? | HTTP 請求(GET/POST) |
??QTcpSocket ?? | TCP 網絡通信(客戶端/服務端) |
??7. 國際化與輔助功能??
類名 | 用途 |
---|
??QTranslator ?? | 多語言翻譯(加載?.qm ?文件) |
??QAccessible ?? | 無障礙訪問支持(如屏幕閱讀器) |
??8. 其他實用工具??
類名 | 用途 |
---|
??QSettings ?? | 持久化配置(讀寫注冊表/INI 文件) |
??QProcess ?? | 啟動外部程序(類似命令行調用) |
??QDateTime ?? | 日期和時間處理 |
??QClipboard ?? | 剪貼板操作(復制/粘貼文本) |