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

正文內(nèi)容

基于qt實(shí)現(xiàn)的畫圖板程序的設(shè)計(jì)論文(參考版)

2024-11-21 21:48本頁(yè)面
  

【正文】 感謝我的母校,給了我一個(gè)濃厚的學(xué)習(xí)氛圍,同時(shí)給了豐富的實(shí)驗(yàn)資源和圖書資源。欽佩他們不僅是淵博的知識(shí),還有高尚的道德情操,祝我所有的老師永遠(yuǎn)平安健康快樂(lè)。 感謝我的輔導(dǎo)員老師,四年來(lái)一直默默的為的班級(jí)導(dǎo)航,將對(duì)未來(lái)充滿懵懂的,慢慢引入各自的發(fā)展領(lǐng)域中,無(wú)論從生活上還是學(xué)習(xí)上都給了無(wú)微不至的關(guān)心和指導(dǎo)。在我的大學(xué)學(xué)習(xí)生活中和本次畢業(yè)設(shè)計(jì)中,老師給予我的鼓勵(lì)和耐心指導(dǎo),為我順利完成課題奠定了堅(jiān)實(shí)的基礎(chǔ),并且給了我面對(duì)困難和解決困難的勇氣。Reilly Media, Inc 2nd edition January 20 [17]Andrew Krause, Foundations of GTK+ Development, Apress 2nd edition April 23, 2007, 212- 234 [18]孫瓊.嵌入式 Linux應(yīng)用程序開(kāi)發(fā)詳解,北京 :人民郵電出版社, 2020 [19]Johan Thelin Foundations of Qt Development( Expert39。通過(guò)這次的設(shè)計(jì), QT 作為一款跨平臺(tái)的圖形用戶界面設(shè)計(jì)軟件,還是很適合應(yīng)用快速開(kāi)發(fā)的,相信會(huì)有越來(lái)越多的人會(huì)加入到 QT 的研發(fā)中來(lái),使它的功能和性能不斷完善,并在實(shí)際應(yīng)用中走向成熟。 總體來(lái)說(shuō),電子畫板的設(shè)計(jì)能夠滿足基本的用戶需求,不過(guò)要成為一款真正能夠進(jìn)入市場(chǎng)的軟件,還是有很多的缺陷,同時(shí)還需要更多拓展功能的支持。 } 這樣就能實(shí)現(xiàn)畫基本圖形功能了,效果如圖 3所示: 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 23 頁(yè) 共 27 頁(yè) 圖 53 實(shí)現(xiàn)基本圖形功能 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 24 頁(yè) 共 27 頁(yè) 6 結(jié)論 本文著重介紹了基于一個(gè)成熟的嵌入式 GUI 系統(tǒng)即 QT 所設(shè)計(jì)的電子畫板程序并可以在 Linux 環(huán)境下運(yùn)行,實(shí)現(xiàn)了電子畫板的相關(guān)基本功能,另外還實(shí)現(xiàn)了打開(kāi)png、 bmp 等格式圖片在其基礎(chǔ)上進(jìn)行繪圖的功能,并且 在兩個(gè)系統(tǒng)環(huán)境下分別生成了可執(zhí)行文件。 img=clearImage。 在構(gòu)造函數(shù)里進(jìn)行變量初始: scale = 1; 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 22 頁(yè) 共 27 頁(yè) angle = 0; shear = 0; 然后進(jìn)行那幾個(gè)函數(shù)的定義: void PaintArea::zoomIn() { scale*=; update(); } void PaintArea::zoomOut() { scale/=; update(); } void PaintArea::zoom_1() { scale = 1; update(); } void PaintArea::clear(){ clearImage=QImage(thiswidth(),thisheight(),QImage::Format_ARGB32)。 (1)在 中添加代碼。 update()。}} tempImage = img。 h = eventy() y。 break。 (lastPoint,endPoint)。} case Rubber:{ 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 21 頁(yè) 共 27 頁(yè) (QPen(Qt::white,20))。 lastPoint=endPoint。 endPoint=eventpos()。 (color)。} case Brush:{ QPen pen。 lastPoint=endPoint。 endPoint=eventpos()。 (color)。} case Pen:{ QPen pen。 lastPoint=endPoint。 endPoint=eventpos()。 (color)。} 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 20 頁(yè) 共 27 頁(yè) case None:{ QPen pen。 lastPoint=endPoint。 endPoint=eventpos()。 (color)。 在 中的鼠標(biāo)事件中添加以下代碼: switch(shape){ case Line:{ QPen pen。theImage) { QPainter pp( amp。QT::LeftButton) { //如果鼠標(biāo) 左鍵按著的同時(shí)移動(dòng)鼠標(biāo) lastPoint = eventpos(); //獲得鼠標(biāo)指針的當(dāng)前坐標(biāo)作為起始坐標(biāo) }} void PaintArea::mouseMoveEvent( QMouseEvent *event) { if( eventbuttons() amp。 添加頭文件: include QMouseEvent include QPoint 在 protected 中添加函數(shù)聲明: void mousePressEvent( QMouseEvent *); //鼠標(biāo)按下事件 void mouseMoveEvent( QMouseEvent *); //鼠標(biāo)移動(dòng)事件 void mouseReleaseEvent( QMouseEvent *); //鼠標(biāo)釋放事件 在 private 中添加對(duì)象聲明: QPoint lastPoint,endPoint; //定義兩個(gè)坐標(biāo)對(duì)象存放鼠標(biāo)指針的前后兩個(gè)坐標(biāo) (2)在 中添加函數(shù)的定義。 (1)在工程中添加新的 C++類,類名 PaintArea,以 QWidget 作為基類。 }。 QToolBar *mainToolBar。 //保存的槽函數(shù) private: PaintArea *paintArea。 void saveAs_slot()。 protected slots: void new_slot()。 //菜單欄功能函數(shù)聲明 void createToolBars()。 ~MyWindow()。 (1)在工程中添加新的“ C++類” [9][10][11],類名為 Mywindow,以“ QMainWindow”[12]作為基類。 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 16 頁(yè) 共 27 頁(yè) (3)將畫布添加到布局中。最終,電子畫板的整體結(jié)構(gòu)如圖 1所示: 圖 51 菜單設(shè)計(jì) 電子畫板布局的實(shí)現(xiàn) (1)調(diào)用 QT 中的 createMenus()函數(shù),實(shí)現(xiàn)菜單欄的布局。 中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 15 頁(yè) 共 27 頁(yè) 5 電子畫板功能設(shè)計(jì)與實(shí)現(xiàn) 設(shè)計(jì)實(shí)現(xiàn)一個(gè)成功的應(yīng)用程序,不但要有使用的功能配置,也要有有好的用戶界面,本節(jié)就是對(duì)于電子畫板程序的設(shè)計(jì)與實(shí)現(xiàn)的簡(jiǎn)要介紹。 ( 11)圖片打開(kāi)、編輯、保存功能:可以打開(kāi)一些格式的圖片,如 png、 bmp等,并且可以作為畫板背景,在其做編輯并且保存。 ( 9)畫板畫圖工具功能:畫板可以實(shí)現(xiàn)選擇圖形、畫筆類型、畫筆線寬、畫筆顏色等功能。 ( 7)畫板拉伸功能:畫板可以再當(dāng)前任何狀態(tài)下進(jìn)行側(cè)方向的立體層次型拉伸。 ( 5)畫板縮小功能:畫板默認(rèn)尺寸設(shè)計(jì)為 400 300,圖片可逐級(jí)縮小,能夠以尺寸的 倍遞減,最小可縮小到設(shè)計(jì)時(shí)最小尺寸 1 1。 ( 3)畫板的打開(kāi)功能:可以打開(kāi)原來(lái)編 輯并保存過(guò)的畫板。 在對(duì)軟件進(jìn)行實(shí)際設(shè)計(jì)之前,先對(duì)使用過(guò)程中用戶可能用到或可能需要的功能等進(jìn)行整理和列一個(gè)簡(jiǎn)要的提綱,具體設(shè)計(jì)絲路如下: ( 1)畫板新建功能:新建初始畫板,可以選擇新建畫板的大小,以及背景顏色,確定后即得到所需新建畫板。 (2) 系統(tǒng)運(yùn)行在 Qt 平臺(tái)下,系統(tǒng)應(yīng)該有一個(gè)較好的圖形用戶界面。 需求分析 理解需求 畫圖板程序的建立,需要進(jìn)行用戶需求調(diào)查與分析,以確定系統(tǒng)目標(biāo),提高解決問(wèn)題的詳細(xì)方案,這是系統(tǒng)建設(shè)的重要環(huán)節(jié)。當(dāng)然,用主操作系統(tǒng)里面的文件作為虛擬機(jī)的磁盤空間是比較常見(jiàn)的方式,相比較前面一種,可能性能上有稍稍的降低,總之, vmware 是一款非常成熟的產(chǎn)品 [22]。 vmware 的虛擬磁盤可以 是真實(shí)的物理磁盤分區(qū),而那個(gè)分區(qū)上可能真的有一個(gè) window 的安裝, vmware 雖然支持以這種方式引導(dǎo)虛擬系統(tǒng),但是并不推薦。不過(guò) vmware 啟動(dòng)就會(huì)占用分配給虛擬機(jī)的一大塊內(nèi)存,如果只是虛擬一個(gè)沒(méi)有圖形界面的 Linux 或 BSD,那么可以只給它十幾兆內(nèi)存,如果沒(méi)有開(kāi)虛擬系統(tǒng)里的什么服務(wù),那它也會(huì)跑得很好。目前對(duì) directX 的支持還不是特別成熟,但是已經(jīng)可用。只要硬件資源允許,可以運(yùn)作多個(gè)客戶操作系統(tǒng)。需要比較多的內(nèi)存,性能比較強(qiáng)勁的系統(tǒng)的最佳選擇。其最大的作用就是在一臺(tái)普通計(jì)算機(jī)上模擬出另外一臺(tái)乃至數(shù)臺(tái)能夠單獨(dú)運(yùn)行的操作系統(tǒng),甚至還可以將這幾個(gè)操作系統(tǒng)連成一個(gè)虛擬的局域網(wǎng)絡(luò) [21] 。而虛擬機(jī),則是一種被虛擬化的技術(shù),虛擬機(jī)中的 CPU、內(nèi)存等硬件設(shè)備都看不見(jiàn),但是卻都是可以實(shí)際使用的,可以使用虛擬機(jī)中的硬盤來(lái)存儲(chǔ)數(shù)據(jù),使用虛擬機(jī)中的網(wǎng)卡來(lái)連接網(wǎng)絡(luò),其實(shí)這些功能都是由程序模擬出來(lái)的,但是在使用過(guò)程中,并沒(méi)有感覺(jué)到和真實(shí)的計(jì)算機(jī)有什么不同,這就是虛擬機(jī)技術(shù)。物理計(jì)算機(jī)是實(shí)際存在的, CPU、內(nèi)部存儲(chǔ)器和輸入 /輸出設(shè)備是電子計(jì)算機(jī)的三大核心部件。 所謂虛擬 機(jī),顧名思義,就是指一臺(tái)虛擬的計(jì)算機(jī)。但在純命令模式下編輯源代碼和調(diào)試軟件并不方便,特別是開(kāi)發(fā)大型復(fù)中北大學(xué)信息商務(wù)學(xué)院 2020 屆畢業(yè)設(shè)計(jì)說(shuō)明書 第 11 頁(yè) 共 27 頁(yè) 雜軟件。故強(qiáng)烈建議 QObject 的所有子類使用Q_OBJECT 宏,而不管它們是否實(shí)際使用了信號(hào)、槽和屬性 [16]。根據(jù)元對(duì)象系統(tǒng)的觀點(diǎn),一個(gè)沒(méi)有元代碼的 QObject 的子類和它含有元對(duì)象代碼的最近的祖先相同。 ( 5) metaObject()函數(shù)返回這個(gè)類所關(guān)聯(lián)的元對(duì)象。 ( 3) tr()和 trUtf8() 兩個(gè)函數(shù)是用于國(guó)際化中的字符串翻譯。 除了提供對(duì)象間通訊的信號(hào)和槽機(jī)制之外, QObject中的元對(duì)象代碼實(shí)現(xiàn)其它特征: ( 1) className()函數(shù)在運(yùn)行的時(shí)候以字符串返回類的名稱,不需要 C++編譯器中的本地運(yùn)行類型信息( RTTI)的支持。如果它發(fā)現(xiàn)其中包含一個(gè)或多個(gè)類的聲明中含有 Q_OBJECT宏,它就會(huì)給含有 Q_OBJECT 宏的類生成另一個(gè)含有元對(duì)象代碼的 C++源文件。它基于下列三類:
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1