QT基本名詞

來源:互聯網
上載者:User

Qt Designer — 所見即所得 (WYSIWYG)的介面設計工具, 可以用拖拽的方式將控制項排布在介面上,支援layout, 支援signal/slot編輯。 產生的檔案儲存為ui格式, ui是xml格式的普通文字檔, 預設編碼為utf8, 所以介面上還可以直接寫中文(但是不推薦這麼做哦,還是應該用標準的Qt國際化的方法來翻譯介面。).

Qt Assistant — 類似MSDN的文檔查看工具, 支援html的子集(圖片、超鏈、文本著色), 支援目錄結構、關鍵字索引和全文檢索搜尋, 可以很方便的尋找Qt的API協助文檔,所以是編程必備、使用率最高的工具。

 

qmake – 用於產生Makefile(編譯的規則和命令列)的命令列工具。 它是Qt跨平台編譯系統的基礎。 它的主要特點是可以讀取Qt本身的配置, 為程式產生與庫一致的Makefile。

Qt Linguist — 被稱為Qt語言家的Linguist是用於介面國際化的重要工具, 但其實它並不能幫你翻譯,它的主要任務只是讀取翻譯檔案、為翻譯人員提供友好的翻譯介面。 聽起來這個功能好像不太夠, 沒錯! Linguist必須要和其他工具一起用才能完成Qt國際化。 關於國際化可以參考bug寫的Qt國際化和本地化。 另外,大家可能還不知道, Linguist工具從4.5開始可以支援Gettext的PO檔案格式了哦~

tmake – 和qmake功能一致,是qmake的前身。從Qt3開始tmake全面被qmake替代。

qtdemo – Qt例子和示範程式的載入器, 也可以看作是Qt提供的一個有用的工具。 有了這個工具, 使用者可以很方便的查看Qt提供的多姿多彩的例子程式,從中選擇自己需要的, 不僅可以看到程式啟動並執行情況,還可以查看源碼和文檔。

二級題目:

lupdate – Qt國際化的重要命令列工具之一, 它的功能是從源碼檔案或其他資源檔中提取需要翻譯的字串,並將之用正確的編碼和格式存入ts檔案中。 這個ts檔案是xml格式的普通文字檔, 但不建議用普通的文本編輯工具來編輯, 最好的方法是用Linguist來處理這個檔案。

lrelease – Qt國際化的重要命令列工具之一, 它負責將ts檔案轉化為程式使用的qm檔案。 轉化過程最大的變化是去掉了原始檔案中所有的空白和未翻譯的內容, 並將儲存格式壓縮, 所以qm檔案是保留所有有效資訊但佔用硬碟最少的格式。

uic – UI Compiler, 顧名思義,這個命令列工具是用來編譯ui檔案的, 它能把ui檔案轉化為編譯器可以識別的標準C++檔案, 產生的檔案是一個.h。 這個工具通常情況下不需要使用者去手動調用, qmake會幫你管理ui檔案和調用uic工具。 具體的可以參考筆者的另外一篇文章 Qt4中ui檔案的使用方法。

moc – Meta Object Compiler, 直譯過來是元對象編譯器, 簡單的說這是個先行編譯工具, 用來產生一些與訊號和槽相關的底層代碼。 該工具處理帶有Q_OBJECT宏的標頭檔, 產生形如moc_xxx.h, moc_xxx.cpp的C++代碼,之後再與程式的代碼一同編譯。 同樣,這個命令列工具也不需要使用者手動調用, qmake會在適當的時候調用這個工具的。

三級題目:

後面的題目越來越難了哦~~

rcc – Resource Compiler資源檔編譯工具。 Qt的資源系統是自己一套特別的設計, 工程中可以包含尾碼為qrc的資源檔, 由rcc工具根據qrc的內容將相關的檔案編譯為二進位,並與源碼編譯在一起,儲存在應用程式的二進位檔案中。 這個命令列工具同樣不需要手動調用,由qmake調用。

qconfig – QtEmbedded feature組態工具。 眾所周知,嵌入式版本的Qt可以自己定義一個feature定義檔案叫qconfig-xxx.h,裡面定義一些預定義的宏, 通過這個檔案可以在編譯階段去掉一些feature, 以減少Qt庫的footprint。 這個qconfig工具就是用來編輯feature定義檔案的。 具體的參考筆者的文章簡單Qt裁剪。

qt3to4 – 用於Qt3程式升級為Qt4程式的移植工具。 它的原理是根據xml檔案裡定義的一系列文本替換的規則去做文本替換, 所以…怎麼說呢,這個工具的功能比較有限, 不可避免的需要很多人工幹預才能解決編譯和啟動並執行錯誤。 故而筆者的建議還是重頭寫程式比較靠譜。

qvfb – 一般做嵌入式開發的使用者對這個工具應該不陌生。 這是個有幾分神奇色彩的模擬器, 它可以類比framebuffer裝置(尺寸、色深),還可以通過skin檔案類比硬體鍵盤的布局(包括特殊索引值的按鍵), 是在x86環境下調試嵌入式程式必不可少的有效工具。 無怪乎minigui也比較無恥的偷竊了這個工具…實在是誘惑力太大了

四級題目:

qtconfig – X11系統下用於配置Qt環境的工具。 可以設定字型、Style、Palette、印表機等。 設定資訊會儲存在使用者家目錄,所以可以按不同使用者的喜好來設定不同的值。

qcop – 嵌入式環境qtopia帶的進程間通訊的工具, 用於進程間的通訊和進程間API的相互調用。

pixeltool – 類似放大鏡的工具,可以看清滑鼠滑過的每個像素。

findtr – 從源碼提出翻譯字串,儲存為Linux的po格式。 po是Linux系統下國際化方法gettext使用的標準格式, 所以這個工具是為了和Linux本身的國際化方法相容而提供的。

uic3 – Qt4中提供的處理Qt3 ui檔案的工具,產生的程式碼是Qt4的代碼,可以放在Qt4的工程裡使用。 值得注意的是,uic3產生的程式碼有一部分會使用Qt3Support庫的API, 不是純的Qt4代碼。

phonesim – Qtopia裡帶的奇妙工具, 用於調試手機環境。 可以類比提供AT命令介面的modem裝置。 有了這個工具就可以在案頭環境下調試應用和modem之間的互動邏輯, 簡單的說Qtopia裡像接打電話、收發簡訊、STK程式等功能都是靠這個工具來調試的。

makeqpf – Qt為了嵌入式環境的需要自創了一種字型格式叫qpf, 這個格式是個位元影像字型, 它把已經預渲染的文字直接儲存成二進位內容, 使用的時候可以用記憶體映射載入, 從載入到繪製的過程不需要計算,所以速度非常快。 makeqpf工具就是用來建立qpf格式的字型的,它可以讀取系統中的字型格式, 根據使用者的設定產生特定字型大小規格的qpf檔案供使用者使用。

五級題目:

這些工具我也不熟。。就不多說了。。

lconvert – 4.5版本新引入的工具, 用於翻譯檔案之間的格式轉換, 將ts格式轉換為其他工具可讀取的XLIFF格式。

qdbusxml2cpp – QtDBus XML編譯器, 用於將xml格式的DBus遠程調用的對象和函數API的描述檔案翻譯為C++代碼。 這個工具建立的是個代碼的架構,裡面的API具體實現要使用者自己來填充。

D-Bus Viewer — 可以用來查看D-Bus對象及其對外提供的API, 可以通過雙擊API的方式調用某個方法, 還可以註冊訊號, 這樣所有發出的訊號都會顯示在表單中。

IDC – ActiveQt模組提供的命令列工具,用於將Qt二進位轉化為COM server。 該工具由qmake調用,不需要手工執行。

dumpcpp – ActiveQt模組的命令列工具, 可以為一個類型庫建立C++的命名空間。

dumpdoc – ActiveQt模組的命令列工具,可以為COM對象建立Qt風格的文檔。

testcon – ActiveQt模組的命令列工具, 全稱為ActiveX Test Container, 也就是可以作為ActiveX控制項的容器, 這樣可以把控制項安裝到系統中再測試。 該工具會提供詳細的事件和屬性變化的log資訊。

Qt Script Debugger — 用於調試Qt Script的工具,可以單步運行,查看輸出等。 Qt文檔裡有很詳細的一篇專門講這個的,有興趣的來看下: Qt Script Debugger Manual

感覺怎麼樣? 是不是很多工具從來沒聽說過? 即使如此也毋需沮喪, 這裡面的很多工具筆者也是第一次聽說。 看看還有沒有遺漏的歡迎評論,以便筆者補充。 剛剛加了幾個和qtopia有關的工具。。仔細想想其實qtopia的工具還是蠻多的, 應該單獨寫一篇才對。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.