freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于qt的多功能日歷設(shè)計與開發(fā)畢業(yè)設(shè)計(doc畢業(yè)設(shè)計論文)-資料下載頁

2025-06-27 18:27本頁面
  

【正文】 下載supervivi示意圖(2) 點(diǎn)擊“USB PortTransmit/Restore”選項,并選擇打開文件supervivi開始下載。.(3) 下載完畢,BIOS 會自動燒寫supervivi 到Nand Flash 分區(qū)中,并返回到主菜單。 移植Linux內(nèi)核(1)在BIOS 主菜單中選擇功能號[k],開始下載linux 內(nèi)核zImage。如圖43所示: 圖43 BIOS主菜單(2) 點(diǎn)擊“USB PortTransmit”選項,并選擇打開相應(yīng)的內(nèi)核文件zImage開始下載。.(3) 下載完畢,BIOS 會自動燒寫內(nèi)核到Nand Flash 分區(qū)中,并返回到主菜單,如圖44所示:圖44 下載Linux內(nèi)核 移植根文件系統(tǒng)針對64M/128M1Gb mini2440/micro2440,有不同的文件系統(tǒng)燒寫映象文件: ,實際上它們的內(nèi)容都是完全相同的,只是制作工具(mkyaffs2image)不同。(1) 在BIOS 主菜單中選擇功能號[y],開始下載yaffs 根文件系統(tǒng)映象文件。(2) 在BIOS 主菜單中選擇功能號[y],開始下載yaffs 根文件系統(tǒng)映象文件開始下載。(3) 下載過程如圖45所示,下載完畢,BIOS 會自動燒寫內(nèi)核到Nand Flash 分區(qū)中,并返回到主菜單。圖 45 下載根文件系統(tǒng)5 多功能日歷設(shè)計與開發(fā)的實現(xiàn)QT不僅在MS Windows適用,而且在Linux上也適用,并且QT是集成了很多C++類,所以編程起來方便簡潔,可以做精美的圖形用戶界面。同時隨著現(xiàn)在嵌入式技術(shù)的發(fā)展,也能夠用到嵌入式系統(tǒng)的編程中,大大提高了編程性能。本章主要講述在Linux系統(tǒng)環(huán)境下基于QT的多功能日歷的設(shè)計與開發(fā)。 QT關(guān)鍵技術(shù)信號和槽用于對象問的通訊。信號/槽機(jī)制是QT的一個中心特征并且是QT與其它工具包的最不相同的部分。與其它工具包的最不相同的部分。的通訊方式來實現(xiàn)同一目的?;卣{(diào)是指一個函數(shù)的指針,所以如果希望一個處理函數(shù)通知一些事件,可以把另一個函數(shù)(回調(diào))的指針傳遞給處理函數(shù)。處理函數(shù)在適當(dāng)?shù)臅r候調(diào)用回調(diào)?;卣{(diào)有兩個主要缺點(diǎn)。首先它們不是類型安全的。從來都不能確定處理函數(shù)使用了正確的參數(shù)來調(diào)用回調(diào)。其次回調(diào)和處理函數(shù)是非常強(qiáng)有力地聯(lián)系在一起的,因為處理函數(shù)必須知道要調(diào)用哪個回調(diào)。在QT中有一種可以替代回調(diào)的技術(shù),使用信號和槽。當(dāng)一個特定事件發(fā)生的時候,一個信號被發(fā)射。QT的窗口部件有很多預(yù)定義的信號,總是可以通過繼承來加入自己的信號,槽就是一個可以被調(diào)用處理特定信號的函數(shù)。QT的窗口部件有很多預(yù)定義的槽,但是通常的習(xí)慣是可以加入自己的槽,這樣就可以處理所感興趣的信號。信號和槽的機(jī)制是類型安全的:一個信號的簽名必須與它的接收槽的簽名相匹配(實際上一個槽的簽名可以比它接收的信號的簽名少,因為它可以忽略額外的簽名)。因為簽名是一致的,編譯器就可以幫助檢測類型不匹配。信號和槽是寬松地聯(lián)系在一起的:一個發(fā)射信號的類不用知道也不用注意哪個槽要接收這個信號。QT的信號和槽的機(jī)制可以保證如果把1個信號和1個槽連接起來,槽會在正確的時間使用信號的參數(shù)而被調(diào)用。信號和槽可以使用任何數(shù)量、任何類型的參數(shù)。它們是完全類型安全的:不會再有回調(diào)核心轉(zhuǎn)儲(core dump)。從QObject類或者它的一個子類(比如QWidget類)繼承的所有類可以包含信號和槽。當(dāng)對象改變它們的狀態(tài)的時候,信號被發(fā)送,從某種意義上講,它們也許信號被發(fā)送,從某種意義上講,它們也許通訊時所做的一切。它不知道也不注意無論有沒有東西接收它所發(fā)射的信號。這就是真正的信息封裝,并且確保對象可以用作一個軟件組件。槽可以用來接收信號,但它們是正常的成員函數(shù)。一個槽不知道它是否被任意信號連接。此外,對象不知道關(guān)于這種通訊機(jī)制和能夠被用作一個真正的軟件組件??梢园言S多信號和所希望的單一槽相連,并且一個信號也可以和所期望的許多槽相連。把1個信號和另1個信號直接相連也是可以的,這時,只要第1個信號被發(fā)射時,第2個信號立刻就被發(fā)射[11]。如下圖51所示為多功能日歷主窗口程序中的信號與槽機(jī)制之間的連接程序代碼。這段主窗口程序代碼中,分別實現(xiàn)了三個信號與槽機(jī)制的連接。它們分別是月組合框信號與月設(shè)置函數(shù)、年修改信號與年設(shè)置函數(shù)以及字體大小旋轉(zhuǎn)框信號與字體大小設(shè)置函數(shù)。實現(xiàn)了這些信號與槽機(jī)制之間的連接,才能使得多功能日歷中的年、月、日以及字體字體大小按需要更改與變動。圖51 信號與槽機(jī)制的連接 多功能日歷程序各功能模塊分析多功能日歷程序的設(shè)計思路主要是在一個主窗口程序中創(chuàng)建了一個中心部件,并再在其基礎(chǔ)之上創(chuàng)建了一些諸如,組合框、旋轉(zhuǎn)框、標(biāo)簽等的部件,實現(xiàn)信號與槽機(jī)制間的連接。其次就是在窗口部件中插入最為關(guān)鍵的日歷模塊函數(shù)。日歷模塊函數(shù)中,如何使QT編譯的日期顯示結(jié)果與系統(tǒng)的顯示日期相同是首要的實現(xiàn)目標(biāo)。隨后,才能在此基本的日歷框架基礎(chǔ)之上實現(xiàn)更多的功能。主窗口程序模塊中,主要定義并設(shè)置了一些多功能日歷界面所需的部件,例如月組合框是用來調(diào)整月份的,字體旋轉(zhuǎn)框是用來調(diào)整日歷文本框中字體的大小的。隨后對窗口進(jìn)行了一個整體上的布局,使主窗口界面的視覺效果更為整齊規(guī)范。具體實現(xiàn)代碼如圖52和53所示。圖52 日歷各部件設(shè)置代碼圖53 日歷布局設(shè)置代碼主窗口的整體布局主要是通過部件QHBoxLayout和QVBoxLayout來實現(xiàn)的。QHBoxLayout部件實現(xiàn)在水平方向上從左到右排列各窗口部件;QVBoxLayout部件實現(xiàn)在豎直方向上從上到下排列各窗口部件。日歷程序模塊實現(xiàn)的功能就是能夠在主窗口中呈現(xiàn)規(guī)則排列的具體日期。那么首先就要繪制七列單元格實現(xiàn)一周七天的顯示效果,而具體的行數(shù)需要根據(jù)一個月的實際天數(shù)來加以調(diào)整。而QT程序編譯顯示的日期結(jié)果是跟著系統(tǒng)日期的改變而改變的。主要設(shè)計實現(xiàn)的代碼如下圖5圖55以及圖56所示。圖54主要是設(shè)置了日歷字體的格式,例如字體大小與顏色;圖55主要是日歷框架以及格式上的布局與設(shè)置代碼;圖56是日歷日期如何按順序一天天顯示的設(shè)置代碼[12]。圖54 日歷字體設(shè)置代碼圖55 日歷表格框架設(shè)置代碼圖56 日歷日期顯示代碼 搭建Linux編譯環(huán)境(1) 建立交叉編譯環(huán)境在Linux 平臺下,要為開發(fā)板編譯內(nèi)核,圖形界面Qtopia,bootloader,還有其他一些應(yīng)用程序,均需要交叉編譯工具鏈。216。 \,然后進(jìn)入到該目錄,執(zhí)行解壓命令:cd /tmptar xvzf –C /解壓過程如下圖57所示:圖57 交叉編譯器解壓過程216。 把編譯器路徑加入系統(tǒng)環(huán)境變量,運(yùn)行命令:gedit /root/.bashrc編輯/root/.bashrc 文件,在最后一行添加:export PATH=$PATH: /opt/Embedded/toolschain/,保存退出。重新登錄系統(tǒng)(不必重啟機(jī)器,開始logout 即可),使以上設(shè)置生效,在命令行輸入armlinuxgcc –v,會出現(xiàn)如下圖58的信息,這說明交叉編譯環(huán)境已經(jīng)成功安裝。圖58 交叉編譯器成功安裝(2)解壓創(chuàng)建目標(biāo)文件系統(tǒng)在工作目錄/opt/Embedded 中執(zhí)行:cd /opt/Embeddedtar xvzf /tmp/linux/ (3)解壓安裝源代碼216。 首先創(chuàng)建工作目錄/opt/Embedded。在工作目錄/opt/Embedded 中執(zhí)行:cd /opt/ Embeddedtar xvzf /tmp/linux/ 目錄,并內(nèi)含相應(yīng)的全部源代碼。216。 ,進(jìn)入源代碼目錄執(zhí)行:cd /opt/Embedded/./buildall當(dāng)順利執(zhí)行完畢,再運(yùn)行mktarget 腳本,將會從編譯好的目標(biāo)文件目錄中,,把它在開發(fā)板的根目錄下解壓,就可以使用了,如下命令tar xvzf –C /這樣,就會在/usr/local/目錄下創(chuàng)建生成Trolltech 目錄,它里面包含了運(yùn)行所需要的所有庫文件和可執(zhí)行程序。 設(shè)計成果如下圖59所示,設(shè)計實現(xiàn)了基于QT的多功能日歷的設(shè)計與開發(fā)。左上方的月組合框和年旋轉(zhuǎn)框都可以自由選擇和切換,表格單元格中的字體也可以由字體大小組合框來控制。而不同的帶有特殊意義的日期還可以通過設(shè)置字體的格式來設(shè)置不同的顏色加以區(qū)分和提醒。圖59 多功能日歷此外,設(shè)計還給日歷設(shè)置了一個消息提醒的功能。除了在特定的日子上顯示紅色之外,編譯程序之后,會彈出一個帶有簡短信息的消息框來提示某年某月某日有何事件,如下圖510所示。圖510 日歷提醒框在此次畢業(yè)設(shè)計過程中,由于對Mini2440開發(fā)板,Linux操作系統(tǒng),Qt Creator軟件以及C++編程等接觸不多,因此遇到了許多的困難。期間花費(fèi)了許多時間來了解和學(xué)習(xí)編程以及操作,最后終于在導(dǎo)師的指導(dǎo)和幫助下完成了改設(shè)計。但由于時間上的限制以及本人知識面和能力方面的不足,本次設(shè)計還有一些未完成和有待改進(jìn)的地方。在將程序下載到開發(fā)板的過程中,可能由于使用的開發(fā)板Mini2440與交叉編譯器、文件系統(tǒng)、Linux內(nèi)核等版本配套的問題,使得在開發(fā)板上的演示出現(xiàn)了一些問題,只能在Linux操作系統(tǒng)上完成結(jié)果的顯示了。而在多功能日歷的實現(xiàn)上,有許多需要改進(jìn)的地方,比如設(shè)置一個可移動的光標(biāo),在各日期之間能夠自由切換,并在旁設(shè)置一個按鈕,點(diǎn)擊能彈出一個提醒事件框?;蛘叨喙δ苋諝v上不僅能夠顯示陽歷,還能對應(yīng)的顯示出陰歷的日期和相應(yīng)的二十四節(jié)氣等等。6 結(jié)論本次多功能日歷的設(shè)計與開發(fā)主要完成的設(shè)計目標(biāo)是在Linux操作系統(tǒng)用Qt creator設(shè)計軟件完成代碼的編寫和設(shè)計,生成可執(zhí)行文件。并且搭建好開發(fā)板Mini2440所需要的軟硬件平臺,再將上述可執(zhí)行文件下載到開發(fā)板上實現(xiàn)圖形界面的直觀效果。在日歷功能的設(shè)計與開發(fā)上,本次設(shè)計代碼在實現(xiàn)了一個日歷的圖形化界面基礎(chǔ)之上,還增添了年、月、日的可隨意更改與切換、特殊日期的可提醒事件功能等等,這些功能與我們?nèi)粘I钪兴褂玫降母鞣N電子日歷的功能基本上是相同的。但是,由于時間上的限制及個人知識面的不足,很多的功能還可以進(jìn)行相應(yīng)的修改和提升。比如光標(biāo)可以隨日期任意跳動、隨意點(diǎn)擊一個日期可以彈出事件提醒框、增加對應(yīng)的農(nóng)歷及二十四節(jié)氣等等,實現(xiàn)一個真正的萬年歷。除此之外,由于硬件開發(fā)板Mini2440的一些限制,導(dǎo)致最終顯示成果只能在Linux操作系統(tǒng)下展示。盡管編譯顯示的結(jié)果是完全相同的,但是沒有達(dá)到最終的設(shè)計要求和目的。這其中牽涉到許多的問題,比如,Linux內(nèi)核的版本、armlinuxgcc交叉編譯器的版本、文件系統(tǒng)以及源代碼版本之間的互相配套等,都會導(dǎo)致在Linux操作系統(tǒng)下生成的可執(zhí)行文件無法正確下載到開發(fā)板上顯示。因此,本次設(shè)計還有許多需要加以改進(jìn)和完善的地方。謝辭值此論文完成之際,衷心感謝我的導(dǎo)師金一鳴老師,在畢業(yè)設(shè)計的過程中給予我悉心的指導(dǎo)和幫助,他對待學(xué)識的嚴(yán)謹(jǐn)態(tài)度和作風(fēng)讓我感觸頗深。感謝李敏老師,作為我班的輔導(dǎo)員,在大學(xué)生活期間,給予同學(xué)們的幫助和教導(dǎo)。感謝2007屆電子科學(xué)與技術(shù)的全體同學(xué),和我一起度過了難忘的四年時光。感謝我的爸爸媽媽,將我培養(yǎng)成人,教育我,幫助我。最后,對審批此論文的老師表示深深地謝意。參考文獻(xiàn)[1]魏永明. 實時嵌入式Linux系統(tǒng)上GUI的發(fā)展與展望. 微電腦世界,2000年,47期:49~50[2]符秋麗. 嵌入式系統(tǒng)概述. 科技創(chuàng)新導(dǎo)報,2010年,8期:23[3]肖紅. 嵌入式Linux系統(tǒng)的研究與應(yīng)用. 科技廣場,2010年,3期:141~143[4]王浩南,劉益成. 基于嵌入式Linux系統(tǒng)下的Qt開發(fā). 電腦開發(fā)與應(yīng)用,2010,1期:11~13[5]張娟,雪蘭. 嵌入式Linux的GUI應(yīng)用程序的實現(xiàn). 計算機(jī)應(yīng)用,2003年,04期:115~117[6]北京亞嵌教育研究中心組編. 嵌入式GUI開發(fā)設(shè)計——基于MiniGUI. 北京:電子工業(yè)出版社,2009年5月. 31~36[7]Jasmin Blanchette,Mark Summerfield. C++ GUI Programming with Qt3. Publisher:Prentice Hall PTR,January 15 2004. 15~25[8]丁林松,黃麗琴. QT4圖形設(shè)計與嵌入式開發(fā). 北京:人民郵電出版社,2009年4月. 16~20[9]劉基芳. 利用VMware虛擬機(jī)安裝Linux操作系統(tǒng). 遼寧經(jīng)濟(jì)職業(yè)技術(shù)學(xué)院學(xué)報,2007年,1期:119~120[10]友善之臂mini2440用戶手冊. 7~23[11]王靖. 淺談QT編程. 電腦開發(fā)與應(yīng)用,2007年,10期:72~76[12]Daniel Solin著,袁鵬飛譯. 24小時學(xué)通Qt編程. 北京:人民郵電出版社,2000年11月. 6
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1