出版時(shí)間:2006-4 出版社:電子工業(yè)出版社 作者:倪繼利 頁數(shù):449
Tag標(biāo)簽:無
內(nèi)容概要
如何在Linux內(nèi)核上建立窗口系統(tǒng),這是嵌入式設(shè)備軟件開發(fā)工程師必須了解的。Qt/Embedded是高端嵌入式設(shè)備PDA及手機(jī)的主流開發(fā)工具。作為一項(xiàng)成熟的技術(shù),KDE桌面系統(tǒng)對(duì)于嵌入式窗口系統(tǒng)的設(shè)計(jì)有很大參考價(jià)值:Qtopia給嵌入式窗口系統(tǒng)提供了很好的框架。本書不僅闡述了KDE及X Window的機(jī)制,分析了Qt及Qt/Embedded開發(fā)工具的核心技術(shù),而且還詳細(xì)介紹了如何在嵌入式設(shè)備上建立Qtopia窗口系統(tǒng)。掌握了本書中所介紹的技能,讀者可以在Linux內(nèi)核上建立窗口系統(tǒng),開發(fā)應(yīng)用程序并能夠在PC上模擬運(yùn)行為嵌入式設(shè)備開發(fā)的應(yīng)用程序。 本書主要針對(duì)從事開發(fā)Linux應(yīng)用程序的軟件工程師,也很適合作為大學(xué)教材和參考書?! 〉?章“X Window”闡述了X的體系分層結(jié)構(gòu)、顯卡驅(qū)動(dòng)程序、X協(xié)議,說明了建立在X上的各種編程方法,還分析了X客戶端應(yīng)用程序Xlib函數(shù)如何發(fā)出請(qǐng)求以及X服務(wù)器的工作原理及源代碼?! 〉?章“Qt編程核心技術(shù)”介紹了Qt對(duì)象模型、國際化方法、元對(duì)象及代碼生成、進(jìn)程問通信、窗口部件的基類、模板庫和集合類、Qt線程、鼠標(biāo)拖放、鍵盤焦點(diǎn)、會(huì)話管理,以及調(diào)試等方面的技術(shù)?! 〉?章“KDE窗口系統(tǒng)”介紹了KDE的MIME類型處理、服務(wù)、KIO框架、組件框架和國際化等,還分析了KDE的啟動(dòng)過程及kicker應(yīng)用程序?! 〉?章“Qt/Embedded客戶/服務(wù)器”講述了將應(yīng)用程序下載到嵌入式設(shè)備運(yùn)行的方法,介紹了各種嵌入式GUI窗口系統(tǒng),闡述了Qt/Embedded的客戶/服務(wù)器模型工作過程。本章還分析了設(shè)備輸入事件在客戶與服務(wù)器之間的傳遞機(jī)制、應(yīng)用程序窗口的顯示原理,并說明了運(yùn)行Qt/Embedded程序的方法?! 〉?章“Qtopia核心技術(shù)”介紹了Qtopia開放源代碼的核心技術(shù)及類庫,其中著重分析了插件的裝載過程、應(yīng)用程序快速啟動(dòng)器的機(jī)制、類MimeType,以及編寫輸入法的方法等?! 〉?章“Qtopia服務(wù)器”主要說明組成Qtopia服務(wù)器的各個(gè)類的功能,介紹了Qtopia服務(wù)器的啟動(dòng)過程,分析了Qtopia服務(wù)器如何啟動(dòng)應(yīng)用程序及插件,還分析了電源監(jiān)控、外觀設(shè)置、應(yīng)用程序安裝與卸載以及AppServices等與系統(tǒng)管理相關(guān)的小應(yīng)用程序?! 〉?章“Qtopia的sysinfo應(yīng)用程序分析”詳細(xì)分析了sysinfo應(yīng)用程序的源代碼。 第8章“Qtopia編譯及系統(tǒng)集成”說明了Qtopia的定制與集成,闡述了,pro項(xiàng)日文件的語法。并且詳細(xì)分析了由pr0項(xiàng)目文件生成Makefile文件的過程以及描述了Qtopia的打包、安裝和調(diào)試方法。
書籍目錄
第1章 X Window1.1 X WindOW的體系結(jié)構(gòu)1.1.1 X Server1.1.2 X Client1.1.3 X Protocol1.2窗口管理器1.3 X Window啟動(dòng)過程1.4 XFree86配置文件分析1.5 X Window程序設(shè)計(jì)簡介1.5.1 Xlib編程1.5.2 Motif編程1.5.3 GTK/GNOME1.5.4 KDE1.6顯示驅(qū)動(dòng)程序1.6.1顯卡驅(qū)動(dòng)方式1.6.2幀緩沖1.6.3在臺(tái)式機(jī)上使用通用幀緩沖1.6.4幀緩沖設(shè)備驅(qū)動(dòng)程序1.7 X Window協(xié)議1.7.1 X協(xié)議1.7.2 x傳輸接口1.7.3 XDMCP協(xié)議1.8 x client應(yīng)用程序源代碼分析1.8.1 xinit分析1.8.2 XOpenDisplay1.8.3函數(shù)XCreateWindow分析1.9 x Server應(yīng)用程序分析1.9.1 X Server概述1.9.2 DIX層1.9.3 OS層1.9.4 DDX層1.9.5 Screen第2章 Qt編程核心技術(shù)2.1 Qt概述2.2 Qt對(duì)象模型2.2.1信號(hào)和槽2.2.2元對(duì)象系統(tǒng)2.2.3元對(duì)象編譯器限制2.2.4屬性2.3 QObject類2.3.1對(duì)象樹2.3.2事件處理過程2.3.3事件運(yùn)行機(jī)制2.3.4事件過濾器2.3.5定時(shí)器2.3.6連接函數(shù)connect2.3.7字符串翻譯函數(shù)2.4 Qt國際化2.4.1軟件中字符串國際化方法2.4.2創(chuàng)建譯本2.4.3編碼支持2.5 QMetaobject元對(duì)象類2.5.1相關(guān)的數(shù)據(jù)結(jié)構(gòu)2.5.2 QMetaObj}ect對(duì)象2.5.3 Q.OBJECT宏及moc生成代碼分析2.6進(jìn)程問通信——QCopCl3annel2.7窗口部件類2.7.1窗口部件的基類QWidget2.7.2 QFrame類2.7.3 QScrollView類2.8 Qt風(fēng)格機(jī)制2.8.1風(fēng)格類2.8.2窗口系統(tǒng)風(fēng)格更新機(jī)制2.9布局類2.10 Qt插件2.11 Qt模板庫2.11.1迭代器2.11.2算法2.11.3數(shù)據(jù)流串行化2.12集合類2.12.1基于指針的容器的結(jié)構(gòu)2.12.2管理集合條目2.12.3迭代器2.1 3 Qt線程2.13.1線程類QThread2.13.2線程安全的事件傳遞2.14鼠標(biāo)拖放2.15鍵盤焦點(diǎn)2.15.1焦點(diǎn)移動(dòng)的方式2.15.2焦點(diǎn)策略及操作函數(shù)2.16會(huì)話管理2.16.1會(huì)話管理2.16.2測試和調(diào)試會(huì)話管理2.17調(diào)試技術(shù)2.17.1命令行參數(shù)2.17.2打印警告和調(diào)試消息2.17.3調(diào)試宏第3章 KDE窗口系統(tǒng)3.1 KDE 3.5源代碼說明3.2 KDE類庫3.3系統(tǒng)資源訪問3.3.1標(biāo)準(zhǔn)資源目錄3.3.2 KDE系統(tǒng)配置緩沖3.4圖形支持3.5用戶界面3.5.1 Action模式3.5.2用XML定義菜單和工具欄3.5.3在線幫助3.5.4復(fù)雜窗口部件3.6 MIME類型處理3.6.1一個(gè)應(yīng)用MIME類型的例子3.6.2映射M[ME類型到一個(gè)應(yīng)用程序或服務(wù)3.7 KDE服務(wù)3.7.1定義服務(wù)類型3.7.2定義共享庫服務(wù)3.73定義DCOP服務(wù)3.8 K10框架3.8.1同步使用KI03.8.2同步使用KIO3.83 MetaData3.8.4調(diào)度3.8.5定義一個(gè)ioslave3.9 DCOP3.9.1 DCOP工具3.9.2 DCOP收發(fā)數(shù)據(jù)3.10 KDE應(yīng)用程序啟動(dòng)其他應(yīng)用程序的方法3.11國際化和本地化3.12編譯方法3.13桌面框架3.13.1 Panel Applets3.13.2控制中心模塊3.14組件框架3.14.1 KParts組件3.14.2系統(tǒng)托盤3.14.3集成Java3.15 KDE協(xié)議說明3.16 KDE啟動(dòng)3.16.1 startkde腳本分析3.16.2 startkde中的應(yīng)用程序說明3.16.3桌面組件3.17 kicker應(yīng)用程序3.17.1 kicker應(yīng)用程序的類繼承關(guān)系3.17.2桌面配置文件3.17.3 kicker窗口的建立過程3.17.4 K菜單第4章 Qt/Embedded客戶/服務(wù)器4.1 各種嵌入式GuI4.1.1 X Window4.1.2 MICROWindows4.1.3 MiniGLjI4.1.4 QT/Embedded4.2 Qt/Embedded的應(yīng)用示例4.2.1編譯Linux內(nèi)核4.2.2 root文件系統(tǒng)4.2.3裁剪Qt/Embedded庫4.2.4編譯應(yīng)用程序4.2.5拷貝Qt庫及應(yīng)用程序4.2.6打包4.2.7下載及運(yùn)行4.3幀緩沖4.3.1 Directl.1B介紹4.3.2虛擬幀緩沖qvfb4.4創(chuàng)建應(yīng)用程序4.4.1 QApplication類4.4.2 QApplication構(gòu)造函數(shù)4.5構(gòu)建服務(wù)器4.5.1 QWSServer類說明4.5.2 QWSServer類構(gòu)造函數(shù)分析4.6 Qt/Embedded客戶端與服務(wù)器通信4.6.1服務(wù)器相關(guān)的類說明4.6.2客戶與服務(wù)器問的接收事件處理4.6.3服務(wù)器對(duì)窗口的協(xié)調(diào)管理4.7輸入設(shè)備與應(yīng)用程序通信4.7.1鼠標(biāo)鍵盤相關(guān)類4.7.2打開鼠標(biāo)設(shè)備的過程4.7.3設(shè)備文件與socket連接4.7.4服務(wù)器捕獲設(shè)備輸入信號(hào)4.7.5服務(wù)器發(fā)送事件給客戶4.8應(yīng)用程序顯示4.8.1與顯示相關(guān)的類4.8.2與字體相關(guān)的類4.8.3函數(shù)init display4.8.4 QWSDisplay構(gòu)造函數(shù)分析4.8.5 QScreen4.8.6與圖形顯示相關(guān)的類4.8.7圖形顯示4.9運(yùn)行Qt/Embedded應(yīng)用程序4.10字符輸入4.11增加一個(gè)加速顯示卡驅(qū)動(dòng)程序到Qt/Embedded4.12 Qt/Embedded作為VNC服務(wù)器第5章 Qtopia的核心技術(shù)5.1 Qtopia簡介5.1.1 Qtopia PDA5.1.2 Qtopia手機(jī)版5.1.3手機(jī)庫5.1.4 Qtopia Desktop5.2信道和消息5.3國際化5.3.1翻譯操作步驟5.3.2.qm文件位置53.3 Desktop文件國際化5.3.4文檔國際化5.4 Qtopia文件系統(tǒng)標(biāo)準(zhǔn)5.5 Qtopia插件5.5.1建立插件的步驟5.5.2裝載插件的方法5.6輸入法插件5.6.1創(chuàng)建彈出輸入方法5.6.2創(chuàng)建復(fù)合輸入法5.7快速啟動(dòng)應(yīng)用程序5.7.1改進(jìn)主窗口創(chuàng)建時(shí)問5.7.2 Quick Launcher5.7.3應(yīng)用Quick Launcher5.7.4 Quick Launcher的宏定義5.7.5運(yùn)行Quick Launcher分析5.8 Qtopia核心類庫說明5.8.1 QPEApplication類5.8.2應(yīng)用程序配置與連接類5.8.3 PIM管理類5.8.4桌面相關(guān)類5.8.5字體與輸入法相關(guān)類5.8.6 Storagelnfo和FileSystem類5.8.7 DeviceButtonManager和DeviceButton類5.8.8圖像處理相關(guān)類說明5.8.9多媒體播放相關(guān)類說明5.8.10網(wǎng)絡(luò)相關(guān)類說明5.8.11軟件模塊接口類5.8.12 Service和ServiceRequest類5.8.13 MimeTVpe類5.8.14其他類說明第6章 Qtopia服務(wù)器6.1 Qtopia服務(wù)器特定的類6.1.1 ServerApplication類6.1.2 Server類6.1.3 Launcher類6.1.4 LauncherTabWidget、LaunchernTabBar和LauncherTab類6.1.5 LauncherView和Launcherltem類6.1.6 AppLauncher和QuickLauncher類6.1.7 LoadingWidget和DocumentList類6.1.8 TaskBar類6.1.9 StartMenu和StartPopupMenu類6.1.1 0 InputMethodSelector和InputMethods類6.1.1l RunningAppBar和SysTray類6.1.12服務(wù)器的其他類說明6.2 Qtopia服務(wù)器啟動(dòng)過程6.2.1 Qtopia服務(wù)器的main函數(shù)6.2.2 ServerApplication類構(gòu)造函數(shù)6.2.3 Server類構(gòu)造函數(shù)6.2.4創(chuàng)建服務(wù)器主窗口界面UI6.2.5創(chuàng)建應(yīng)用程序圖標(biāo)視圖6.3應(yīng)用程序啟動(dòng)過程6.4文檔的打開過程6.5電池監(jiān)控小應(yīng)用程序6.5.1電池狀念窗口類6.5.2電源狀態(tài)管理器類6.5.3插件裝載6.6外觀設(shè)置6.6.1 main函數(shù)6.6.2 SampleWindow類6.6.3 AppearanceSettings類6.6.4 AppearanceSe~ings類的構(gòu)造函數(shù)分析6.7安裝與卸載應(yīng)用程序6.8 AppServices應(yīng)用程序6.8.1 AppServices類6.8.2 ASCheckListItem類6.9插件管理器第7章 Qtopia的sys;nfo應(yīng)用程序分析7.1 SystemlnF0類7.2 VersionInfO類7.3 StoragelnfoView類7.4負(fù)載信息Loadlnfo7.5內(nèi)存信息7.6 DataView類第8章 Qtopia編譯及系統(tǒng)集成8.1 qmake介紹8.1.1 qmake編譯過程8.1.2.pro文件的語法分析8.2 Qtopia編譯方法8.2.1 Qtopia編譯步驟8.2.2 Qtopia Desktop編譯步驟8.2.3編譯一個(gè)應(yīng)用程序8.2.4使用NFS運(yùn)行應(yīng)用程序8.2.5應(yīng)用程序調(diào)試8.3為設(shè)備定制Qtopia8.3.1定制Qtopia啟動(dòng)器用戶界面8.3.2設(shè)備硬件因素8.3.3不安裝及不支持的組件8.3.4安令模式需要的插件8.3.5電源管理8.3.6可移去的存儲(chǔ)卡8.3.7 118N8.3.8訪問權(quán)限和儀讀文件系統(tǒng)8.3.9 MMS客戶端8.3.10 GSM模塊集成8.3.11定制鍵盤8.3.12配置硬件按鈕8.4系統(tǒng)集成8.4.1創(chuàng)建設(shè)備特定交叉編譯工具配置文件8.4.2定制電源、背景燈摔制和鍵盤掃描碼8.4.3在Qt/Embedded中創(chuàng)建鍵盤處理函數(shù)8.4.4配置指針設(shè)備8.4.5配置適合設(shè)備的Qt/Embedded庫8.4.6配置適合設(shè)備的Qtopia8.4.7為目標(biāo)設(shè)備創(chuàng)建和安裝Qtopia image文件8.4.8在設(shè)備上配置適合于Qtopl。a的環(huán)境變量8.4.9安裝另外的字體8.4.10集成Java¨8.5 Qtopia編譯系統(tǒng)8.5.1內(nèi)部的編譯系統(tǒng)項(xiàng)目文件說明8.5.2項(xiàng)日文件生成:Makefile8.5.3 src—componentspro和SrCpro文件8.5.4 configure腳本牛成Makefile8.6 Qtopia的編譯過程8.6.1編譯庫8.6.2相互獨(dú)立的應(yīng)用程序及插件的編譯8.6.3文件的安裝8.6.4打包分發(fā)8.7生成img文件并燒錄主要參考文獻(xiàn)
媒體關(guān)注與評(píng)論
本書特點(diǎn): 實(shí)際:作者在實(shí)踐中使用QT開發(fā)嵌入式設(shè)備的就用程序界面,在本書中,他與讀者分離自己在外企從事Linux研發(fā)的經(jīng)驗(yàn)?! ?shí)用:具有專業(yè)人士所需的深度,可以直接拿來運(yùn)用到開發(fā)實(shí)戰(zhàn)中去。本書介紹的KDE及X Windows機(jī)制、Ot及Qt/Embedded核心技術(shù),有助于讀者在嵌入式設(shè)備的Linux內(nèi)核上創(chuàng)建自己的窗口系統(tǒng)。 實(shí)用:重點(diǎn)介紹了一些對(duì)實(shí)際研發(fā)很有用的設(shè)計(jì)方法,包括窗口分層設(shè)計(jì)、接口標(biāo)準(zhǔn)化、菜單通用化、應(yīng)用程序查詢硬件信息等。
編輯推薦
如何在Linux內(nèi)核上建立窗口系統(tǒng),這是嵌入式設(shè)備軟件開發(fā)工程師必須了解的。Qt/Embedded是高端嵌入式設(shè)備PDA及手機(jī)的主流開發(fā)工具。作為一項(xiàng)成熟的技術(shù),KDE桌面系統(tǒng)對(duì)于嵌入式窗口系統(tǒng)的設(shè)計(jì)有很大參考價(jià)值:Qtopia給嵌入式窗口系統(tǒng)提供了很好的框架。本書不僅闡述了KDE及X Window的機(jī)制,分析了Qt及Qt/Embedded開發(fā)工具的核心技術(shù),而且還詳細(xì)介紹了如何在嵌入式設(shè)備上建立Qtopia窗口系統(tǒng)。掌握了本書中所介紹的技能,讀者可以在Linux內(nèi)核上建立窗口系統(tǒng),開發(fā)應(yīng)用程序并能夠在PC上模擬運(yùn)行為嵌入式設(shè)備開發(fā)的應(yīng)用程序?! ”緯饕槍?duì)從事開發(fā)Linux應(yīng)用程序的軟件工程師,也很適合作為大學(xué)教材和參考書。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載
Qt及Linux操作系統(tǒng)窗口設(shè)計(jì) PDF格式下載