




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn基于 SKY2440/TQ2440 的 Qt/Embeded 應(yīng)用程序開發(fā)完全手冊(cè)(上)之 24 小時(shí)學(xué)會(huì) Qt/Embeded 開發(fā)廣州天嵌計(jì)算機(jī)科技榮譽(yù)首發(fā):1天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn本手冊(cè)歸屬廣州天嵌計(jì)算機(jī)科技(以下簡(jiǎn)稱“天嵌科技”)所有,并保留。非經(jīng)天嵌科技同意(形式),任何及個(gè)人不得擅自摘錄本手冊(cè)部分或全部?jī)?nèi)容,違者()公司將其。2天嵌科技廣州天嵌計(jì)算機(jī)科
2、技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn前言所謂“授人以魚不如授人以漁”,在天嵌科技的中,。首先希望做到讓客戶熊掌與魚兼得。天不會(huì)只提供一堆枯燥的,無法深入嵌科技在寫本時(shí),正是了天嵌科技一貫的學(xué)習(xí)的,只能試用的死應(yīng)用程序;其次碼和源碼分析,而且還會(huì)配套詳細(xì)的開發(fā)程序的目的。公司始終是以開發(fā)源碼的態(tài)度,不只提供應(yīng)用程序的全部源代,讓廣大客戶迅速上手,以達(dá)到您能自行開發(fā) Linux Qt 應(yīng)用本講解?;趶V州天嵌計(jì)算機(jī)科技的 SKY2440 或 TQ2440 對(duì) Qt 應(yīng)用程序開發(fā)的操作步驟進(jìn)行為了讓本能夠盡快同大家見面,本分為上下兩
3、個(gè)部分,上部分以開發(fā)流程和實(shí)例開發(fā)為主;下部分則是完全是實(shí)例分析。本手冊(cè)是整個(gè) Qt 開發(fā)手冊(cè)的上部分,手冊(cè)的下部分也將很快和大家見面。通過前面學(xué)習(xí) Linux 移植手冊(cè)相信您已經(jīng)對(duì) linux 的開發(fā)有一定的了解,是不是每每對(duì)著 PC 的串口控制臺(tái)來操作開發(fā)板的Linux,而沒法使用LCD 對(duì)開發(fā)板進(jìn)行操作感到很無奈呢?本將會(huì)帶您進(jìn)入Linux的神奇圖形界面,您只要拿起觸摸筆,觸動(dòng)開發(fā)板的 LCD 的觸摸屏,就能完成一切您想要的開發(fā)板功能。是不是很酷?好,趕快加入的 Linux 圖形界面 GUI 的開發(fā)-Qt 的應(yīng)用程序開發(fā)吧!首先大家要明白,方法和方向重要性大于您盲目的學(xué)習(xí)和收料。本注重方
4、法和方向,它會(huì)教會(huì)您如何掌握一個(gè) Qt 應(yīng)用程序的開發(fā)流程、應(yīng)用程序如何和 Linux 驅(qū)動(dòng)結(jié)合、應(yīng)用程序如何實(shí)現(xiàn)開機(jī)自動(dòng)也會(huì)盡量在本手冊(cè)中您 Qt 的開發(fā),在后面的章節(jié)中運(yùn)行等等進(jìn)行;其次會(huì)以講解開發(fā)思路和方法為主,對(duì)于只講解方法的實(shí)例的源碼就暫不提供,作為您學(xué)習(xí)后自行研究的作業(yè)吧,(這部分源碼將在本的下中提供并進(jìn)行源碼分析)。同時(shí)在涉及某些 Qt 的機(jī)制的知識(shí)時(shí),可能會(huì)一步帶過,請(qǐng)您能夠理解,因?yàn)楸静皇?Qt 源碼分析,而是大家開發(fā) Qt 的方法;相信本手冊(cè)能給您開啟Qt 應(yīng)用程序開發(fā)的這扇門,帶領(lǐng)您進(jìn)入 Qt 應(yīng)用程序開發(fā)的廣闊天地。但是將來您想要有大發(fā)展還需要您的不懈努力。這里有個(gè)希望
5、也是請(qǐng)求,當(dāng)您根據(jù)本手冊(cè)學(xué)會(huì)了 Qt 的應(yīng)用程序的開發(fā)后,請(qǐng)您告訴您身邊的朋友和同事,您是廣州天嵌計(jì)算機(jī)科技的用戶;同時(shí)也請(qǐng)您能夠把您做出來的Qt 的相關(guān)程序或解s”上,一方面以方便后來人的學(xué)習(xí),另一決方法寫成建議的文檔放到的“方面也是對(duì)您的支持是工程師所付出的艱辛勞動(dòng)的一點(diǎn)回報(bào)。在這里天嵌科技的全體員工先說聲無限前進(jìn)的動(dòng)力。了。選擇天嵌科技的 ARM9 學(xué)習(xí)板-TQ2440,是您的睿智。堅(jiān)持做最好最有價(jià)值的TQ2440 開發(fā)板,也堅(jiān)持寫最適合廣大客戶的 2440 開發(fā)。本上部分六個(gè)章節(jié),第一章講解一些關(guān)于 Qt 的概念和區(qū)別;第二章講解 qtopia-1.7.0 的移植;第三章到第五章講解
6、Step by Step 制作 Qt 應(yīng)用程序的開發(fā);第六章講解 qtopia-2.2.0 的移植和 Qt4 的移植。主要講解 Qt 應(yīng)用程序的開發(fā)流程,實(shí)現(xiàn)如何在PC 的 Linux 開發(fā) Qt 應(yīng)用程序,實(shí)現(xiàn)仿真以及如何移植 Qt 到 arm-linux 系統(tǒng)中。在實(shí)例開發(fā)的章節(jié)中的第一小節(jié),都會(huì)用于分析如何實(shí)現(xiàn)要開只講這部發(fā)的 Qt 程序的實(shí)現(xiàn)思路,然后再在后面的章節(jié)中完成實(shí)際的開發(fā)。請(qǐng)注意:源碼分析時(shí),分代碼是什么功能,具體怎么用這部分代碼您可以從實(shí)例中獲取方法。3天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:
7、.cn本手冊(cè)默認(rèn)您已經(jīng)會(huì) C 語言的開發(fā),至少會(huì)簡(jiǎn)單的C+語言的開發(fā)。廣州天嵌計(jì)算機(jī)科技-研發(fā)部編著2009-07-07(第二版)4天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn更新說明標(biāo)識(shí)方法說明,20090525 表示 2009 年 5 月 25,這是第一版的開發(fā)手冊(cè)。目前的標(biāo)識(shí)是 20090707,這是第二版的開發(fā)手冊(cè),相對(duì)于第一版冊(cè),進(jìn)行了如下更新:1、各個(gè)源碼的進(jìn)行了更新,因?yàn)?,主要把的和改為了的空間升級(jí),導(dǎo)致原來的文件沒法,這里設(shè)置了新的./files。在 11 頁和 128 頁。2、對(duì)空間不支持 t
8、ar.bz2 格式的后綴名的文件,故把原來 tar.bz2 后之后,請(qǐng)將其改回即可。在 11 頁和 128 頁。文件的格式進(jìn)行了說明,因?yàn)榫Y名的文件改名為 rar 后綴名的文件,3、時(shí)要求限制為單線程,因?yàn)橛脩魯?shù)量巨大,導(dǎo)致空間所在服務(wù)器帶寬占用很大,空間供應(yīng)商向提出這個(gè)要求,請(qǐng)廣大客戶能夠理解。4、在 11 頁的 2.1 章節(jié)的開始添加三點(diǎn)說明,希望能夠注意。5、修改了 16 頁的關(guān)于qt 庫的提取的方法,刪除對(duì)了.buildopts 文件的操作。5天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn目錄.2前言3更
9、新說明5目錄6第一章 Qt 的幾個(gè)相關(guān)概念8Qt 的區(qū)別8Qt 的版本介紹8qtopia-1.7.0 版本81.2.2 qtopia-2.2.09Qt4 版本9各個(gè)版本的區(qū)別101.3 Qte 開發(fā)第二章 建立 Qt 開發(fā)介紹準(zhǔn)備工作11編譯 Qt..4設(shè)置運(yùn)行環(huán)境12使用編譯Qt(首先編譯針對(duì) x86 的)13仿真qt(這里用 qtopia 來實(shí)現(xiàn))13編譯ARM的 Qt142.3制作包含 Qt 的文件系統(tǒng)142.3.1 制作qtopia 的運(yùn)行. 142.3.2 添加qtopia 到文件系統(tǒng)中15第一個(gè) Qt 應(yīng)用程序的開發(fā)流程2
10、0建立 Qt 的項(xiàng)目文件20產(chǎn)生源代碼32添加 main.cpp 文件35產(chǎn)生*.pro 文件36生成 Makefile 文件37制作啟動(dòng)器40制作桌面圖標(biāo)43第三章修改.cpp 文件45編譯并仿真473.10 移植到 SKY2440/TQ2440 開發(fā)板513.11 學(xué)習(xí)后記55第四章 開發(fā)網(wǎng)絡(luò)設(shè)置程序5設(shè)計(jì)思路56制作界面56生成源碼646天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn第五章添加 ma
11、in.cpp 文件64添加各個(gè)響應(yīng)函數(shù)的內(nèi)容65得到 Qt 的可執(zhí)行文件79制作程序和配置文件84測(cè)試86實(shí)驗(yàn)后記87其它 QT 測(cè)試程序的開發(fā)885.1 蜂鳴器的測(cè)試程序的開發(fā)8..4設(shè)計(jì)思路88制作測(cè)試程序界面88添加響應(yīng)函數(shù)的內(nèi)容98測(cè)試1085.2 LED 燈測(cè)試程序的開發(fā)10..45.2.4設(shè)計(jì)思路109制作測(cè)試程序界面109添加響應(yīng)函數(shù)的內(nèi)容112其他操作116測(cè)試121其他的介紹123按鍵測(cè)試程序123串口測(cè)試程序124RTC 設(shè)置程序127第六章 Qtopia-2.2.0 和 Qt4 的移植1286.1 q
12、topia-2.2.0 的移植1286.2 qt4 的移植131天嵌科技-Qt/Embeded 程序開發(fā)完全手冊(cè)(下)之 Qt/Embeded 開發(fā)進(jìn)階預(yù)告132附錄 1133x86-build_qtopia的內(nèi)容133x86-build_konqueror的內(nèi)容134x86-setenv的內(nèi)容135touch-build_qtopia的內(nèi)容135touch-build_konqueror的內(nèi)容137touch-setenv的內(nèi)容138附錄 2139x86-qtopia-2.2.0_build 的內(nèi)容139x86-qtopia-2.2.0-konqueror_build 的內(nèi)容139test-
13、x86-qtopia-2.2.0 的內(nèi)容140arm-qtopia-2.2.0_build 的內(nèi)容140arm-qtopia-2.2.0-konqueror_build 的內(nèi)容1417天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn第一章 Qt 的幾個(gè)相關(guān)概念1.1t 的區(qū)別關(guān)于 Qt 的常規(guī)性介紹這里就不重復(fù),使用各大小搜索引擎搜索 Qt 相關(guān)字樣,會(huì)有大把大把介紹性質(zhì)的文字供參考。在學(xué)習(xí) Qt 開發(fā)之前,先來區(qū)分幾個(gè)概念,這幾個(gè)概念也是開發(fā)板中提供的Qt 的相關(guān)源碼包和目錄的區(qū)別,搞明白這些概念將會(huì)有助于理解
14、Qt。必須知道的一點(diǎn):Qt 是一個(gè)完整的 C+應(yīng)用程序開發(fā)框架,因?yàn)樗腁PI 在所有的上是相同的(請(qǐng)注意:相同這兩個(gè)字),所以,Qt 工具在所有上的使用方式一致,因而Qt 的應(yīng)用程序開發(fā)和無關(guān)(請(qǐng)注意:是程序開發(fā)和無關(guān))。Qt 的概念:Qt 是泛指Qt 的所有版本的圖像界面庫,比如Qt/X11,Qt Windows, Qt Mac 等。由于Qt最早是在 Linux 中隨著 KDE 流行開來的,所以通常所說的 Qt 都是指的用于 Linux/Unix 的 Qt/X11。后面會(huì)講到 Qt2、Qt3 和 Qt4,2、3 和 4 是指的 Qt 的版本號(hào)。Qt/Embeded 的概念:它是用于Linu
15、x 系統(tǒng)的 Qt 版本,Qt/Embeded 也簡(jiǎn)稱 Qte 或 Qt/E(以下使用 Qte 表示)。Qte 去掉了 X Lib 的依賴而直接工作在 Framebuffer 上,雖然它是 Qt 的不是 Qt/X11 的子集,它有部分機(jī)制(比如QCOP 等)就不能用于Qt/X11 中。版本,但是它Qtopia 是一個(gè)基于 Qte 的類似桌面系統(tǒng)的應(yīng)用環(huán)境,包含有PDA 版本和 Phone 版本。請(qǐng)注意是基于 Qte 的應(yīng)用環(huán)境,換個(gè)說法就是 Qte 是庫(實(shí)際上也是庫,叫基礎(chǔ)類庫),Qtopia 是用 Qte 這個(gè)庫開發(fā)出來的應(yīng)用程序。Qtopia 最高版本是 Qtopia-2.2.0,在這之后
16、就沒有再推出過免費(fèi)的 Qtopia 了。Qtopia Core:可以認(rèn)為是剛剛講到的 Qte,雖然名字中含有 Qtopia,不過它的實(shí)質(zhì)還是剛剛講到的 Qte的基礎(chǔ)類庫。雖然從 Qt4 開始把Qtopia Core 并到 Qtopia 的產(chǎn)品線中了,但實(shí)質(zhì)上Qtopia Core 還是基礎(chǔ)類庫,相當(dāng)于 Qte。注意:最近 Qtopia Core 改名了,新名字叫做:qt-embeded-linux。1.2t 的版本介紹看完上面所講到的幾個(gè)概念后,相信應(yīng)該對(duì) Qt 有個(gè)初步了解了,然后咱們了解目前市面上流傳的 Qt的用于的版本類型。1.2.1 qtopia-1.7.0 版本在 SKY2440/T
17、Q2440 的隨機(jī)的光盤中提供的Qt 的源碼包中包含了如下幾個(gè)源碼(注意:將光盤附帶的 Qte.tar.bz2 的壓縮包打開后才能看到):konqueror-embeded-snapshot-20030705.tar.gz 壓縮包是名為konqueror 的 web 瀏覽器的源碼包。qt-embeded-2.3.7.tar.gz 壓縮包是 Qte 基礎(chǔ)類庫的源碼包,使用它主要提供 lqte 的庫等。qt-x11-2.3.2.tar.gz 壓縮包是用于PC 桌面的Qt 的源碼包,使用它主要生成用于 Qt 的開發(fā)工具,比如 uic、8天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)
18、尚德A2004 室傳真::510000: :或 http:.cnmoc 和 designer 等,還有仿真器 qvfb 工具。qtopia-free-1.7.0.tar.gz 壓縮包是 Qtopia 的應(yīng)用程序源碼包,使用它可以編譯得到qpe 的應(yīng)用環(huán)境和其它的類桌面的應(yīng)用程序。tmake-1.11.tar.gz 壓縮包可以得到 progen 和 tmake 工具,使用它們配合前面提到的得到的*.cpp 和*.h文件制作出 Makefile 文件。1.2.2 qtopia-2.2.0下面講 qtopia-free-src-2.2.0.tar.gz 版本的源碼內(nèi)容,下面列出了 3 個(gè)ftp:/q
19、topia/source/qtopia-free-src-2.2.0.tar.gz地址: HYPERLINK http:/w/ http:/w/ftp/mirror/qtopia/source/qtopia-free-src-2.2.0.tar.gzftp:/f/mirror/qtopia/source/qtopia-free-src-2.2.0.tar.gz獲取 qtopia-2.2.0 的源碼包之后,打開源碼包,可以看到它里面分如下幾個(gè)目錄:qt2 目錄:可以編譯出所需要的 Qte 庫和 Qt 工具。qtopia 目錄:2.2.0 版本的 qtopia 源碼。tmake 目錄:提供 pro
20、gen 和 tmake 工具。1.2.3 Qt4 版本下面說 Qt4 的源碼包,下面列出了其中一個(gè)版本的地址:ftp:/qt/source/qt-embedded-linux-opensourrc-4.5.0.tar.bz2如要其它的版本,可以使用 ftp:/qt/source/然后選擇您所需要版本。前面已經(jīng)提到了 qtopia-2.2.0 是 Qtopia 的 PDA 版本的最終版本,所以,在 Qt4 中是沒有qtopia 的,我們移植 Qt4 時(shí),是不會(huì)產(chǎn)生Qtopia 的。獲取源碼包之后,打開源碼包,看一下里面的文件結(jié)構(gòu)中是不包含 qtopia 目錄的,目錄結(jié)構(gòu)如下 :9天嵌科技廣州天嵌
21、計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn在源碼包下是不存在 qtopia 源碼的,不過在 exles 和 demos 兩個(gè)目錄下包含了一些測(cè)試程序源碼,當(dāng)編譯好 Qte 的庫之后,可以編譯這些測(cè)試程序出來測(cè)試Qt4 是否移植成功。1.2.4 各個(gè)版本的區(qū)別Qtopia-2.2.0 和光盤提供的 Qtopia-1.7.0 的區(qū)別,除了 Qtopia 的版本號(hào)由 1.7.0 變成了 2.2.0 之外,其他的基本沒有變化,注意:qtopia 也基本沒兩者的 qtopia 生成的 qpe 等應(yīng)用環(huán)境基本一致。改動(dòng)。首先,兩者都是基
22、于 Qt2 的基礎(chǔ)類庫的;第二,Qt4 和 Qt2 的區(qū)別:Qte 的版本區(qū)別,注意兩者的庫差別非常大,這方面的比較,可以通過網(wǎng)絡(luò)搜索相關(guān)的對(duì)比資料。1.3 Qte 開發(fā)介紹下面解釋一下剛剛提到的幾個(gè)工具的意思:designer:用于設(shè)計(jì)窗口組件的應(yīng)用程序,使用它可以很方便的制作成應(yīng)用程序的界面,并且得到的用戶界面文件,該文件是按照 XML 格式保存的。.uiuic:將剛剛得到的 XML 格式的.ui 文件轉(zhuǎn)換為.h 和.cpp 文件。moc:用于 Qt C+擴(kuò)展的 metra-object 編譯器,利用剛剛產(chǎn)生的.h 生成moc-.cpp 文件。qvfb:是為 qt 提供一個(gè)虛擬 framb
23、uffer 的應(yīng)用程序,實(shí)現(xiàn)對(duì) qt 的應(yīng)用程序提供一個(gè)模擬的運(yùn)行窗口,在 PC 上面開發(fā) qt 程序時(shí),主要使用它來進(jìn)行仿真。10天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cnt 開發(fā)第二章 建立請(qǐng)注意:因?yàn)樾械?,所以是?PC 上面進(jìn)行開發(fā)的,所以使用的是針對(duì) x86 的 Qt,仿真等也是在PC 上面運(yùn)首先要建立 x86 的Qt 的。還請(qǐng)注意:在第一章中特意講到了程序開發(fā)和著急。無關(guān)這么一條,這里按下不表,后面會(huì)講到的,請(qǐng)不要交叉編譯器請(qǐng)使用3.4.5 for V61.rar提供的 3.4.5 的 61 版本
24、,: src/crosstools-Qt 的源碼 src/qtopia-1.7.0-20090525.rar地址:地址:制作好的第三章到第五章的 4 個(gè)實(shí)驗(yàn)的源碼1.7.0.rar src/src-for qtopia-注意 1:前面這 3 個(gè)件 )。制作好的文件系統(tǒng)得到的壓縮包要改后綴名 rar 為 tar.bz2(因?yàn)榈目臻g不支持 tar.bz2 格式的文 src/root qtopia.rar,否則可能導(dǎo)致文件被空間供應(yīng)商地址:注意 2:請(qǐng)使用單線程的工具。2.1 準(zhǔn)備工作注意 1:為了讓文件系統(tǒng)所提供的庫和文件系統(tǒng)內(nèi)的應(yīng)用程序編譯的所用的庫想匹配,這里放棄了使用原先的 3.3.2 的交
25、叉編譯器,改用了 3.4.5 的 61 版本,3.4.5 的 61 版本相對(duì)于以前的交叉編譯器的改進(jìn)主要為:1、支持 softfloat 運(yùn)算,因?yàn)?S3C2440 的 CPU 沒有硬件浮點(diǎn)數(shù)運(yùn)算,故只能采用浮點(diǎn)數(shù)運(yùn)算;2、添加了 jpeg、png、gif 等功能庫,使 Qt 編譯時(shí)支持組件。注意 2:由于使用了 3.4.5 的 61 版的交叉編譯器,從而導(dǎo)致了光盤里面原先提供的Qte 的源碼包不能正常編譯,故需要重新修改后的 Qt 源碼包進(jìn)行編譯。不能正常編譯的原因是:不同編譯器之間對(duì)源碼的的判斷標(biāo)準(zhǔn)不相同,從而導(dǎo)致源碼編譯出錯(cuò),提供的 Qt 源碼是花費(fèi)大量時(shí)間,經(jīng)過一次又一次的編譯、修改再
26、編譯后得到的,具體修改的內(nèi)容這里就不列出來了,在源碼中有注釋。注意 3:之所以本章節(jié)中沒有在第一版的基礎(chǔ)上刪掉從光盤修改的這部分的內(nèi)容,是為了對(duì) Qt 的源碼結(jié)構(gòu)進(jìn)行再次的說明,已達(dá)到區(qū)別各個(gè)源碼的目的。首先解壓光盤里面提供的 Qte 的源碼包,解壓后的目錄結(jié)構(gòu)如下:在/opt/EmbedSky/Qte/目錄下面包括了 mouse-qtopia、touch-qtopia 和 x86-qtopia 三個(gè)目錄,這三個(gè)目錄下的文件基本相同(可能內(nèi)容略有不同),如下圖所示:11天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.c
27、no 目錄、set-env 和 build 文件;為因?yàn)橐陨先齻€(gè)目錄下面的源碼包內(nèi)容基本上是一樣,不一樣的是了方面后面介紹,所以這里特意將光盤里面的 Qte 的源碼包進(jìn)行調(diào)整,方法如下:三個(gè)目錄下面的*.tar.gz 文件到 Qte 目錄下,同時(shí)o 目錄、set-env 和 build 文件到Qte 目錄后面這三個(gè)的時(shí)候,請(qǐng)改名,改名規(guī)則為 touch-build_qtopia 或mouse-build_qtopia 或x86-build_qtopia下或 touch-setenv 或 mouse-setenv 或 x86-setenv。然后分別修改對(duì)于的x-build-qtopia 文件和x
28、-setenv 文件,修改后的內(nèi)容見附錄 1。還記得第一章講到的概念吧,這就是這里作出如此改動(dòng)的主要原因:所需要的在 PC 上面運(yùn)行的 qt 工具是由qt-x11-2.3.2.tar.gz 的源碼包編譯出的,它所使用的編譯器是 PC 自帶的編譯器;qt-embeded-2.3.7.tar.gz 源碼提供而所要所用的 ligqte 這個(gè)庫,這里需要根據(jù)而選擇編譯器的類型了,如果是 PC 上面運(yùn)行的(x86)就是用 PC 自帶的編譯器,如果是針對(duì) ARM的,需要使用 arm-linux-gcc 編譯器(這里使用 3.3.2 版的編譯器);qtopia 則由 qtopia-free-1.7.0.ta
29、r.gz 這個(gè)壓縮包編譯得到,它也是根據(jù)不同而選用不同的編譯器,針對(duì) PC 的使用 PC 自帶的編譯器,針對(duì) ARM 的使用 3.3.2 的arm-linux-gcc 的編譯器;tmake-1.11.tar.gz 提供tmake,它是不需要編譯而直接使用的,每次使用前,請(qǐng)確認(rèn) tmake 軟件的參數(shù)是否設(shè)置正確。2.2 編譯 t2.2.1 設(shè)置運(yùn)行環(huán)境在 PC 的 Linux 的終端執(zhí)行如下命令,然后打開gedit 編輯器后,修改內(nèi)容如下紅色部分所示:#gedit /etc/ld.so.conf/修改內(nèi)容如下:/opt/EmbedSky/Qte/x86_qtopia/qt/lib/opt/Em
30、bedSky/Qte/x86_qtoia/qtopia/lib/usr/kerberos/lib/usr/X11R6/lib/usr/lib/sane12天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn/usr/lib/qt-3.1/lib/usr/lib/usr/lib/qt2/lib2.2.2 使用編譯t(首先編譯針對(duì) x86 的)在 PC 的 Linux 的終端執(zhí)行命令:#./x86-build_qtopia,然后就可以開始編譯 Qt 了。注意 1:這里我使用的是 RedHat9.0,然后是完全安裝的,Red
31、Hat9 完全安裝大概需要 4.8G 的空間,如果不完全安裝會(huì)導(dǎo)致編譯出錯(cuò),原因是缺少某些必要的庫導(dǎo)致的。注意 2:對(duì)于 Qt 的編譯只要成功了,僅僅編譯一次即可,之后就可以不用再編譯了。編譯完畢之后,在終端執(zhí)行:#ldconfig 即可使剛剛編譯出來的庫生效。注意 3:對(duì)于 Qt 編譯過程中出現(xiàn)的錯(cuò)誤,多數(shù)情況是因?yàn)?RedHat9 沒有完全安裝導(dǎo)致的(首先請(qǐng)確認(rèn) RedHat9 是否完全安裝)。也有部分錯(cuò)誤是因?yàn)槟蜷_的終端執(zhí)行了別的設(shè)置導(dǎo)致編譯器某些庫沒有及時(shí)生效而產(chǎn)生的,此時(shí)就需要您重新打開一個(gè)終端即可。注意 4:編譯 x86 和 arm 的均是兩個(gè),以x86 的為例,其中名為“x8
32、6-build_konqueror”的腳步已經(jīng)包含判斷是否運(yùn)行“x86-build_qtopia”的腳步的語句,即:當(dāng) qtopia-1.7.0 沒有編譯,則先運(yùn)行“x86-build_qtopia”編譯成功后再編譯 web 瀏覽器。2.2.3 仿真 qt(這里用 qtopia 來實(shí)現(xiàn))在 PC 的 Linux 的終端執(zhí)行命令:#. set-env_x86(在.和 set-env_x86 之間有個(gè)空格)如果是緊接著 2.2 的操作進(jìn)行,就不需要執(zhí)行上面這步操作;如果是新打開的終端,則必須執(zhí)行。然后使用命令:#qvfb -width 640 -height 480 &上面這條命令中 qvfb 是
33、打開仿真窗口,-width 640 -height 480 是設(shè)置窗口大小為 640480,&是表示從運(yùn)行 qvfb。然后執(zhí)行命令:#qpe即可在打開的仿真窗口中打開 qtopia 的運(yùn)行界面,如下圖所示:注意 1:使用的是:Redhat9.0(上面提供有和安裝,建議安裝 redhat9的分區(qū)提供 12G 以上,因?yàn)?redhat9 完全安裝后大概需要 4.8G 的空間,然后 Qt 編譯時(shí)也需要大量的空間),提供的 3.4.5 的 61 版本;同時(shí)交叉編譯器是在的編譯中已經(jīng)實(shí)現(xiàn)了自動(dòng)判斷是否出錯(cuò),如果出錯(cuò)則停止后面的操作。注意 2:經(jīng)常有客戶說 qvfb 能夠運(yùn)行,而qpe 運(yùn)行時(shí)找不到這個(gè)命
34、令。這里解釋一下:qvfb面說過了是由 qt-x11 編譯出來的;而qpe 是在 qtopia 中編譯出來的,而qtopia 編譯時(shí)又要依賴 qt 提供的 qte 的庫,所以,當(dāng) qpe 命令不存在時(shí),最大的可能是qt 的編譯不成功,而絕大多數(shù)情況是因?yàn)?redhat9 沒有完全安裝導(dǎo)致的,所謂的 redhat9 完全安裝就是把一切可能用到的庫都安裝進(jìn)去,至于缺少什么庫,如果您有這個(gè)時(shí)間和精力,可以自行研究。13天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn到這一步 Qt 算是基本編譯完成了,這里僅僅是編譯了針對(duì)
35、 PC 的 Qt。2.2.4 編譯 ARM的t編譯針對(duì) SKY2440/TQ2440 開發(fā)板的Qt 的方法,在 PC 的 Linux 的終端執(zhí)行命令:#./touch-build_qtopia或./mouse-build-qtopia(鼠標(biāo)這個(gè)編譯暫時(shí)沒有提供,計(jì)劃是把鼠標(biāo)和觸摸使用做成自適應(yīng)的方式,正在嘗試進(jìn)行中,預(yù)計(jì)在下部分冊(cè)中提供出來),即可分別編譯出針對(duì)觸摸屏和鼠標(biāo)版本的 qte 和 qtopia。注意 1:請(qǐng)使用 3.4.5 的 61 版本的 arm-linux-gcc 的交叉編譯器。注意 2:交叉編譯出來的 Qt 只能在 ARM運(yùn)行,也就是說在 PC 使用 qvfb 沒法仿真的。2
36、.3 制作包含 t 的文件系統(tǒng)這里默認(rèn)您已經(jīng)會(huì)使用 busybox 構(gòu)建基本的 yaffs 文件系統(tǒng)。下面的操作步驟實(shí)現(xiàn)在文件系統(tǒng)中添加觸摸版本的 qtopia(鼠標(biāo)版本的方法)。注意 1:下面的截圖僅僅是示例性的截圖,截圖可能和文中講到的路徑不相符合,操作步驟按照文中所講的路徑或者以實(shí)際情況為準(zhǔn)。注意 2:下面講到的文件系統(tǒng)部分的目錄時(shí),寫的均是相對(duì)路徑。2.3.1 制作 qtopia 的運(yùn)行為了讓 qtopia 能夠在開發(fā)板上運(yùn)行起來,需要制作運(yùn)行。主要實(shí)現(xiàn)設(shè)置好幾個(gè)變量的功能。qtopia 運(yùn)行內(nèi)容如下:14天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004
37、室傳真::510000: :或 http:.cn上 面 “ #export set QWS_MOUSE_PROTO=”USB:/dev/input/mouse0” 這 行 和 “ #export setQWS_MOUSE_PROTO=”TPanel:/dev/touchscreen/0”這行是決定使用 USB 鼠標(biāo)還是觸摸屏的配置語句; “ /dev/null 2/dev/null”這半句話決定著是否在串口上面打印 qtopia 的啟動(dòng)信息,有它則不打印 qtopia 的啟動(dòng)信息,無則打印。建立好文件后將其到文件系統(tǒng)的“sbin/”目錄下,然后設(shè)置其權(quán)限為可執(zhí)行文件,同時(shí)修改文件系統(tǒng)的“etc
38、/init.d/rcS”文件,在其中添加“qtopia &”的語句。2.3.2 添加 qtopia 到文件系統(tǒng)中首先在文件系統(tǒng)的“opt/”目錄下面添加上三個(gè)目錄:“kde”、“qt”和“qtopia”添加 qtopia 的主程序:把“/opt/EmbedSky/Qte/touch_qtopia/qtopia/”目錄下面的這幾個(gè)目錄到文件系統(tǒng)的“opt/qtopia/”目錄下,需要的目錄見下圖:15天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn添加 qtopia 所需要的庫:在“qt”目錄下面建立“l(fā)ib”目錄,
39、“/opt/EmbedSky/Qte/touch_qtopia/qt/lib/”目錄下的所有的文件和目錄到文件系統(tǒng)的“opt/qt/lib/”目錄下:同時(shí)對(duì)“fonts”目錄下面的字體進(jìn)行刪減,以滿足自己的需要,同時(shí)還要修改“fonts”下的“fontdir”文件,要和剩下的字體對(duì)應(yīng)起來:(建議使用在光盤里面提供的文件系統(tǒng)的里面所包含的字體)16天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn在“kde”目錄下面建立“share”目錄:然后在“share”下面建立“apps”和“config”兩個(gè)目錄:17天嵌科技
40、廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn再在“ apps ” 目錄下面建立“ khtml ” 目錄,“ khtml ” 目錄下面建立“ css ” 目錄, 然后再把“/opt/EmbedSky/Qte/touch_qtopia/konqueror/konq-embed/kdesrc/khtml/css/”目錄下面的“html4.css”文件復(fù)制到文件系統(tǒng)中的剛才建立的“opt/kde/share/apps/khtml/css/”目錄下面:再“/opt/EmbedSky/Qte/touch_qtopia/konque
41、ror/konq-embed/kdesrc/kdecore/”目錄下面的“charsets”文件到文件系統(tǒng)的“opt/kde/share/config”目錄下:到這里,帶有 qtopia 的文件系統(tǒng)就算基本完成了。您可以在文件系統(tǒng)的“root/”目錄中建立名為s/”的目錄,然后將您的文檔比如 MP3 歌曲什么的放到該目錄下,就可以在開發(fā)板啟動(dòng)后的 qtopia“界面的“s”菜單欄下直接看到對(duì)應(yīng)的文件了。18天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn完成了帶有 qtopia 的文件系統(tǒng),在按照前面講解的制作Ya
42、ffs 文件系統(tǒng)的方法,使用 yaffsimage來制作出 Yaffs 文件系統(tǒng)。然后燒寫到開發(fā)板中就可以使用了。注意:帶Qt 的使用觸摸的文件系統(tǒng)首次使用時(shí)需要校正觸摸,校正步驟,根據(jù)LCD 的顯示,進(jìn)行五點(diǎn)校正,分別是左上,左下,右下,右上和中間;校正完畢之后,需要選擇語言的支持,這里選用簡(jiǎn)體中文。一般就到這里關(guān)于 Qt 移植的最基本的東西講完了,下面就進(jìn)入開發(fā) Qt 應(yīng)用程序的。實(shí)現(xiàn)目標(biāo)能夠編寫開發(fā) Qt 的應(yīng)用程序。這里這就需要您的努力。一點(diǎn),能做到的是引導(dǎo)您您法,最終的學(xué)習(xí)效果如何19天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::51000
43、0: :或 http:.cn第三章 第一個(gè) Qt 應(yīng)用程序的開發(fā)流程本章節(jié)主要講解 Qt 程序的開發(fā)流程,從零開始講解如何開發(fā)出第一個(gè) Qt 程序Step by Step。本章節(jié)的前提是已經(jīng)成功的完成了第二章的編譯。啟動(dòng) PC 的 Linux,然后首先在終端中輸入命令:#. x86-setenv,完成設(shè)置變量的操作,當(dāng)然您也可以自行一個(gè)一個(gè)變量的設(shè)置。第一次 Qt 程序?qū)崿F(xiàn)一個(gè)功能,就是按下出來;按下 close 按鈕后,退出該應(yīng)用程序。設(shè)置的 user 按鈕后,顯示出“x”的打印信息注意:本章節(jié)學(xué)習(xí)的目的是開發(fā)流程,對(duì)于源碼分析啊什么的,暫時(shí)不要理會(huì),首先學(xué)個(gè)開發(fā)流程,在下一個(gè)章節(jié)中會(huì)進(jìn)行源
44、碼完全分析。3.1 建立 t 的項(xiàng)目文件在 PC 的 Linux 的“/opt/EmbedSky/Qte/x86_qtopia/pro”目錄下新建一個(gè)名為:“應(yīng)用程序都放到“pro/”目錄下面。/”的目錄,以后的在 PC 的 Linux 的終端輸入命令:#$QTDIR/bin/designer &(在啟動(dòng) Qt 的設(shè)計(jì)器)。注意:這里使用的設(shè)計(jì)器是自己編譯出來的,而不是按照 RedHat9.0 時(shí)系統(tǒng)提供的。打開的設(shè)計(jì)器,如下圖所示:注意:對(duì)于設(shè)計(jì)器的使用,這里不做介紹,很簡(jiǎn)單的一個(gè)工具,自己摸索一下比在這里講很久效果來得好。多數(shù)情況,多數(shù)用 Qt 做開發(fā)的朋友都不使用設(shè)計(jì)器的,至于原因,等您
45、熟悉了您就知道了。新建一個(gè)項(xiàng)目文件,方法如下圖:20天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn下圖是新建項(xiàng)目的原始情況截圖:21天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn下圖是設(shè)置后的截圖,這里設(shè)置整個(gè)界面名稱為:22天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn首先添加兩個(gè)按鈕,一個(gè)命名為 user,另外一個(gè)命名為 close。設(shè)置步驟見下面
46、的連續(xù)截圖:23天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn完成了按鈕的設(shè)置,還需要對(duì)要顯示的打印信息的設(shè)置,放置一個(gè)text 到 user 按鈕的下面,然后將其設(shè)置為隱藏,方法如下連續(xù)截圖:24天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn完成以上的設(shè)置之后,需要添加函數(shù),使剛剛的按鈕能夠?qū)ζ溥M(jìn)行響應(yīng),方法如下圖所示:25天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :
47、或 http:.cn下面這個(gè)操作涉及到了 Qt 中的信號(hào)和槽的概念,的函數(shù)。如下圖所示,完成 user 按鈕和 close 按鈕的理解按鈕的操作是信號(hào),槽就是該操作所響應(yīng):26天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn27天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn28天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn29天嵌科技廣州天嵌計(jì)算機(jī)科技地
48、址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn30天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn完成以上操作后,保存項(xiàng)目文件,操作如下圖所示:31天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn然后退出設(shè)計(jì)器即可。注意:每次修改保存*.ui 的工程文件后,必須使用 3.2 節(jié)的方法重新產(chǎn)生源代碼,否則會(huì)出現(xiàn)編譯出錯(cuò)的情況,原因可以分析 Makefile 文件得到。3.2 產(chǎn)生源代碼
49、使用 uic將剛剛建立的工程轉(zhuǎn)換為源代碼,首先建立一個(gè)可執(zhí)行來完成文件的轉(zhuǎn)換,該在以后的開發(fā)中會(huì)用到,到時(shí)只需要簡(jiǎn)單修改即可用到別的工程中,然后執(zhí)行建立的腳步轉(zhuǎn)換文件 ,方法如下連續(xù)截圖:32天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn33天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn34天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn注意:每次使用設(shè)
50、計(jì)器修改并保存*.ui 的工程文件后,必須使用 ui2cpp 重新產(chǎn)生源代碼,否則會(huì)出現(xiàn)編譯出錯(cuò),切記這一點(diǎn)。所以一般情況,使用設(shè)計(jì)器做完界面之后,就不再使用它,而是直接修改生成的源碼。3.3 添加 main.cpp 文件下面添加 main.cpp 文件,注意該文件也是一個(gè)通用的源碼,以后的使用中僅僅簡(jiǎn)單修改即可用到別的工程中。方法如下:35天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn3.4產(chǎn)生*.pro 文件使用 tmake 中的 progen產(chǎn)生 pro 文件,方法如下圖所示:下面編輯 pro 文件,方法如
51、下:36天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn3.5生成 Makefile 文件根據(jù)上步得到的 pro 文件,使用 tmake可以生成初步的 Makefile 文件,如下圖所示:下圖是生成的.pro 和 Makefile 文件:37天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn然后修改 Makefile,去掉無用的信息,和添加新的內(nèi)容,方法如下:修改后的 Makefile 文件的內(nèi)容如下,紅色部分所示:# Makefile
52、for building# Generated by tmake at 19:47, 2009/05/13 #Project:#Template: app # Compiler, tools and optionsCC =gcc CXX=g+CFLAGS =-pipe -Wall -W -O2 -DNO_DEBUGCXXFLAGS= -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -O2 -DNO_DEBUG38天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cnLINK=
53、g+$(SUBLIBS) -L$(QPEDIR)/lib -L$(QTDIR)/lib -lqpe -lqtopia -lqte$(QTDIR)/bocUIC =$(QTDIR)/bin/uicTAR=tar -cf GZIP=gzip -9f# FilesHEADERS = .h.cpp SOUR= main.cppOBJECTS =.o main.oERFA=.ui=DESKTOP = $(QPEDIR)/apps/EmbedSky/.desktopICON =$(QPEDIR)/pics/ ERFACE_DECL_PATH = .png# Implicit rules.SUFFIXES:
54、 .cpp .cxx .cc .C .c.cpp.o:$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $ $.cxx.o:$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $ $.cc.o:$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $ $.c.o:$(CC) -c $(CFLAGS) $(INCPATH) -o $ $# Build rules$(DESKTOP).png $(ICON)$(): $(UICDECLS) $(OBJECTS) $
55、(OBJMOC) $(LINK) $(LFLAGS) -o $() $(OBJECTS) $(OBJMOC) $(LIBS)39all: $(cp -f cp -f).desktop UICDECLS = UICIMPLS = SRCMOC OBJMOC DIST=.h.cpp=moc .cpp=moc_.o$(QPEDIR)/bin/天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cnmoc: $(SRCMOC)tmake: MakefileMakefile:. -o Makefiletmakedist
56、:$(TAR). $(SOUR) $(HEADERS) $(ERFA) $(DIST)$(GZIP)clean:-rm -f $(OBJECTS) $(OBJMOC) $(DESKTOP) $(ICON) $(-rm -f * core)# Sub-libraries# Combined headers# Compile.o:.cpp .h .uimain.o: main.cpp .h /opt/EmbedSky/Qte/x86_qtopia/qtopia/include/qtopia/qpeapplication.h /opt/EmbedSky/Qte/x86_qtop
57、ia/qtopia/include/qtopia/qpeglobal.h /opt/EmbedSky/Qte/x86_qtopia/qtopia/include/qtopia/qlibrary.h /opt/EmbedSky/Qte/x86_qtopia/qtopia/i.h /opt/EmbedSky/Qte/x86_qtopia/qtopia/include/qtopia/quuid.h /opt/EmbedSky/Qte/x86_qtopia/qtopia/include/qtopia/qtopiawinexport.h /opt/EmbedSky/Qte/x86_qtopia/qtop
58、ia/include/qtopia/timestring.h /opt/EmbedSky/Qte/x86_qtopia/qtopia/include/qtopia/applicationerface.h.h:.ui$(UIC).ui -o $(ERFACE_DECL_PATH)/.h.cpp:.ui$(UIC)-i.h -o .cppmoc_.o: moc_.cpp .h.cpp:.h$(MOC)-o moc_.cpp3.6 制作啟動(dòng)器創(chuàng)建一個(gè)桌面啟動(dòng)器(*.desktop)文件,方法如下截圖:40天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510
59、000: :或 http:.cn這里僅僅完成了主體部分,下面BIG5 編碼的繁體中文,方法如下:其到 windows 系統(tǒng)中,添加上GB2303 編碼的簡(jiǎn)體中文和41天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn42天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn3.7制作桌面圖標(biāo)下面制作桌面圖標(biāo)文件,格式是*.png,大小是 1616。使用 photoshopPS 的,方法如下:43天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山
60、路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn44天嵌科技廣州天嵌計(jì)算機(jī)科技地址:省廣州市天河區(qū)五山路 141 號(hào)尚德A2004 室傳真::510000: :或 http:.cn3.8.cpp 文件修改為了實(shí)現(xiàn)前面講到的按下 user_button 按鈕,出現(xiàn)預(yù)設(shè)的打印信息還需要修改.cpp 的源文件 ,同時(shí)調(diào)整各個(gè)按鈕和現(xiàn)實(shí)信息的位置等,下面列出了修改后的.cpp 的源碼內(nèi)容:/* Form implemenion generated from reading ui file * Created: Thu May 14 12:30:11 2009.ui*by:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 22283-2025長(zhǎng)白豬種豬
- 2025年沈陽大車貨運(yùn)資格證考試題
- 2025年貴陽貨運(yùn)從業(yè)資格證考試模擬試題及答案大全解析
- 單位綠化樹木修剪合同范本
- 上水泥合同范本
- 冷庫設(shè)備租用合同范本
- 企業(yè)收款合同范本
- 協(xié)議客戶合同范本
- 公路項(xiàng)目總承包合同范本
- 制作樣冊(cè)合同范例
- 2024年南京旅游職業(yè)學(xué)院高職單招語文歷年參考題庫含答案解析
- 《電商直播》 課件 項(xiàng)目一 走入電商直播
- 《中國(guó)宮腔鏡診斷與手術(shù)臨床實(shí)踐指南(2023版)》解讀課件
- 中藥學(xué)電子版教材
- GB/T 9535-1998地面用晶體硅光伏組件設(shè)計(jì)鑒定和定型
- 臥式設(shè)備安裝
- 橋梁施工危險(xiǎn)源辨識(shí)與防控措施
- CFG樁施工記錄表范本
- 在生產(chǎn)過程中物料流轉(zhuǎn)交接管理規(guī)定(清風(fēng)出品)
- 第1章操作系統(tǒng)引論
- 復(fù)旦校內(nèi)辦事指南
評(píng)論
0/150
提交評(píng)論