)
Qt是目前最先進、最完整的跨平臺C開發工具。它不僅完全實現了一次編寫所有平臺無差別運行更提供了幾乎所有開發過程中需要用到的工具。如今Qt已被運用于超過70個行業、數千家企業支持數百萬設備及應用。在本文中我們通過使用C和Qt Widgets模塊實現一個簡單的記事本應用程序來學習基本的Qt知識該應用程序是一個小型的文本編輯器允許您創建文本文件、保存、打印或重新打開并在此編輯它還可以設置要使用的字體。在上文中我們為大家介紹了如何從Qt Creator中運行示例、如何創建記事本項目等本文將繼續講解主源文件和設計一個用戶界面。主源文件向導在main.cpp文件中生成以下代碼#include notepad.h #include QApplication int main(int argc, char *argv[]) { QApplication a(argc, argv); Notepad w; w.show(); return a.exec(); }我們將逐行瀏覽代碼下面幾行包括Notepad小部件和QApplication的頭文件所有Qt類都有一個以它們命名的頭文件。#include notepad.h #include QApplication下面這行定義了main函數它是所有基于C和C的應用程序的入口點int main(int argc, char *argv[])下面這行代碼創建了一個QApplication對象這個對象管理應用程序范圍內的資源并且是運行任何使用Qt Widgets的Qt程序所必需的它用argv中運行的argc命令行參數構造一個應用程序對象。(對于不使用Qt Widgets的GUI應用程序您可以使用QGuiApplication代替)QApplication a(argc, argv);下面一行代碼創建Notepad對象這是向導為其創建類和UI文件的對象。用戶界面包含可視元素這些元素在Qt中被稱為小部件小部件的例子有文本編輯、滾動條、標簽和單選按鈕。一個小部件也可以是其他小部件的容器例如對話框或主應用程序窗口。Notepad w;下面一行顯示了Notepad小部件在屏幕上的窗口小部件還可以用作容器。一個例子是QMainWindow它通常包含幾種類型的小部件。默認情況下小部件是不可見的函數show()使小部件可見。w.show();下面一行使QApplication進入它的事件循環當Qt應用程序運行時會生成事件并將其發送給應用程序的小部件事件的例子是鼠標按壓和按鍵。return a.exec();設計一個用戶界面向導生成XML格式的用戶界面定義notepad.ui當您打開記事本UI文件在Qt Creator中它會自動在集成的Qt Designer中打開。當您構建應用程序時Qt Creator啟動Qt用戶界面編譯器(uic)它讀取.ui文件并創建相應的C頭文件ui_notepad.h。