除了標準程式庫 (standard library) 之外, C++ 還有為數眾多的第三方程式庫 (third party library) ,其中較為簡單且開放原始碼 (open source) 的 GUI 程式庫就是 Qt 了
Qt 是從 1991 年開始發展的,取名為 Qt 據說是因為 Q 在 Haavard 的 Emacs 字體特別漂亮,至於 t 則是 toolkit 的縮寫。 Qt 的最主要特色的就是跨平台 (cross-platform) 支援,例如
- Linux
- MS-Windows
- Mac
- Symbian
- Android
- iOS
等等,亦表現平台特色的圖形介面 (graphical interface) 。
雖說 Qt 知名於他的 GUI 應用,不過 Qt 程式庫包含如下各種應用
- SQL 資料庫 (database) 存取
- XML 剖析
- 執行緒 (thread) 管理
- 網路程式設計 (network programming)
- 檔案處理
有些可能會和標準程式庫中的應用重複,例如 Qt 中處理字串 (string) 的型態 (type) 為 QString ,這與標準程式庫中的 string 也是不同的。
現在的 Qt 是由芬蘭的 Digia 公司維護,除了有商業授權外,也有 GNU GPL v. 3.0 的社群版授權,可以此開發自由軟體,自己下載來寫練習程式也是沒有問題的。
下載 Qt 首先連到計畫的官網
點擊〔Download Qt〕,就進入下載的網頁,這裡分成商業版及社群版,商業版在試用期結束後要付月費才能繼續使用,如果是學習 Qt ,這裡選擇社群版下載安裝即可。
請選擇最新的 Qt 版本,本書範例採用 5.12 ,這會連帶安裝相關的編譯工具,約 15G 左右的空間,如果全部安裝,可能需要超過 300G 的空間。
我們打開 Qt Creator ,先點擊〔範例〕頁籤,可以看到 Qt Creator 提供了超過 300 個範例程式,
〔教學〕及左邊〔說明〕的頁籤也提供大量的教學及說明文件,更多的資料包括範例也可到官網查詢。
我們藉由範例先來看看 Qt 有什麼魅力吧!點擊任一範例都可開啟專案,然後左下方有個像是媒體播放器的綠色執行鈕,點擊這個按鈕,專案就會編譯執行,例如以下為 Calqlatr 的執行視窗
這是用 Qt 做的計算機,打開了就玩玩看囉
藉由範例是學習 GUI 的絕佳途徑,開啟專案後,可再由選單中〔檔案〕的〔開啟檔案或專案〕打開專案裡的原始檔案。
玩一個還意猶未盡的話,旁邊還有個 Maroon in Trouble 小遊戲,也來玩玩囉
這是用章魚、海星、螃蟹等阻止氣泡裡的小魚浮出水面的遊戲唷
接下來,我們先來介紹 Qt Creator 吧!
相關教學影片
中英文術語對照 | |
---|---|
標準程式庫 | standard library |
第三方程式庫 | third party library |
開放原始碼 | open source |
跨平台 | cross-platform |
圖形介面 | graphical interface |
資料庫 | database |
執行緒 | thread |
網路程式設計 | network programming |
字串 | string |
型態 | type |
類別 | class |
重點整理 |
---|
1. 除了標準程式庫外, C++ 還有為數眾多的第三方程式庫。 |
2. Qt 為知名的 GUI 應用程式庫,除了 GUI 外, Qt 也具有多種應用。 |
3. Qt Creator 為 Qt 官方提供的整合開發環境,除了可以寫程式外還有文件及大量的範例檔案。 |
問題與討論 |
---|
1. 為什麼 Qt 要另外定義 QString ,而非直接運用標準程式庫中的 string ? |
2. 整合開發環境跟文字編輯器有什麼不同?兩者各有哪些優點或缺點? |
練習 |
---|
1. 開啟並執行 Qt Creator 中的任一範例。 |
2. 承上題,試著開啟範例的程式原始檔,觀察專案的檔案組織。 |