先來嘗試一下幾個簡單的 Qt 程式,並初步了解一些核心特性。
- Hello!World! Orz..
第一步,當然是先克服 Qt 的安裝問題,然後來個簡單的 Hello!World! Orz...
- Signal 與 Slot
Signal 與 Slot 是 Qt 的特性,讓物件之間可以 同步的(Synchronous) 通知訊息,但又不必知道彼此 , Signal 是由物件發出 。
事件基本上是非同步的(Asynchronousd),通常由視窗或系統發出,讓應用程式可以回應使用者動作或系統訊息。
- 基本版面配置
Qt 的三種基本版面配置類型為水平、垂直及格狀(Grid)配置。
Qt 在發行時,本身即帶有豐富的參考文件與範例,為入門時的必看資料。
-
常用圖型元件
元件講是講不完的,這邊 主要在 簡介幾個元件作用,想了解每個元件詳細使用方式, Qt 參考文件與範例 才 是王道。
- 按鈕 選項
按鈕與選項是視窗程式中最基本的元件。
對話方塊用來與使用者作簡單的訊息交換與溝通。
文字欄位是使用者輸入資訊的基本元件。
這類元件通常用於顯示項目清單,可以簡單的列示,或者是使用樹狀或表格等。
- 版面元件
除了上面介紹的三種基本版面配置之外,還可以使用一些版面元件來協助元件的群組與版面的切割。
簇繁不及備載...Orz...
-
常用 API
Qt 已經不只是個 GUI 框架,它提供豐富的 API,可作為撰寫應用程式的基礎。
- QString、容器元件
QString 是常用的類別之一,擁有一些與容器類似的特性,而 Qt 提供了一系列的通用容器類別(Container class),使用上更輕量級且安全 。
檔案輸入輸出是一個應用程式所必備的,藉由檔案的輸入輸出,也可以一同瞭解Qt的I/O處理。
QtSql 模組提供與平台、資料庫無關的資料庫存取需求,在這邊使用 MySQL 作為示範。
- 繪圖
Qt 繪圖基於 QPainter,可於 QPaintDevice 的子類別上,進行幾何圖案、圖像、文字等繪製。
- 拖放(Drag & Drop) 與 剪貼
拖放動作對於使用者是很直覺的操作,而剪貼簿可以方便使用者於不同的應用程式間分享資料。
Qt 的網路模組提供網路存取時的高階與低階 API,基於非同步(Asynchronous)及 Signal 的行為。
-
進階議題
進階議題就是比較進階的議題。。XD
- 多執行緒(Multithreading)
想要實作多執行緒功能,只要繼承 QThread 類別,單就表面上來看,執行緒並不困難。
- 國際化(Internationalization)
讓您的應用程式可以因地制宜,顯示不同的語系文字。
-
附錄
| ||||
| ||||
|