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

正文內(nèi)容

跳躍鏈表的設(shè)計(jì)與實(shí)現(xiàn)-數(shù)據(jù)結(jié)構(gòu)與算法綜合設(shè)計(jì)報(bào)告書-資料下載頁

2025-01-19 01:17本頁面
  

【正文】 gtk_widget_show(label1)。 } i++。 } 在輸出時(shí),將輸出結(jié)果放在了界面上,具體操作方法是建立每個數(shù)據(jù)相對應(yīng)的標(biāo)簽,每行建立一個hbox組合框,然后將每一行的數(shù)據(jù)標(biāo)簽放在組合框上,然后將其打印在界面上,由于組合框組件所能容納的構(gòu)件數(shù)有一定的限制,所以在數(shù)據(jù)量大于16的情況下,輸出選項(xiàng)容易出錯,但在數(shù)據(jù)量小的情況下,不影響演示。在大數(shù)據(jù)測試時(shí),不采用輸出等操作,防止出錯。I、轉(zhuǎn)換函數(shù)char *zhuanhuan(int num){ char *ws。 int j=0,i=0,len。 char temp[7]={0},str[7]={0}。//若不初始化則,需要加temp[j]=0和str[i]=0 while(num) { temp[j]=num%10+39。039。 j++。 num/=10。 } j。 while(j=0) { str[i]=temp[j]。 j。 i++。 } str[i]=39。\039。 ws=str。 return ws。}此轉(zhuǎn)換函數(shù)的作用與提取數(shù)據(jù)函數(shù)的作用正好相反,此函數(shù)將輸入的數(shù)據(jù)轉(zhuǎn)換為字符串形式返回,其作用是在輸出到界面的時(shí)候,將數(shù)據(jù)轉(zhuǎn)換為標(biāo)簽可以識別的字符串形式,便于進(jìn)行界面打印操作。其意義在于溝通了數(shù)據(jù)和界面,使其可以相互轉(zhuǎn)換,使得程序更加的完整。 .創(chuàng)新思想 利用全局指針變量刷新界面,制作“全局菜單”typedef struct win_menu//用于更新保留菜單,整合指針信息{ int _num。 GtkWidget *ponent[100]。}*Pwin。 此結(jié)構(gòu)體由兩部分組成,_num用來保存當(dāng)前頭指針?biāo)诘暮笠晃幌聵?biāo),GtkWidget *ponent[100]。用來存儲構(gòu)件的指針。在本軟件中,“0”用來存儲底層組合框指針,“1”用來存儲main_window的指針,動態(tài)的更新除0,1,還有菜單以外的組件。圖41 主界面圖42 按值創(chuàng)建圖43 輸出全層圖44 輸出定層圖45 彈窗警告 界面更新問題 在軟件前期規(guī)劃時(shí),將界面切換更新考慮在內(nèi),由于第一次接觸GTK,對其了解不是很深,導(dǎo)致在界面制作時(shí),界面更新成為一大難點(diǎn),GTK+在全局菜單方面有很大缺陷,多方查閱資料仍無果,網(wǎng)絡(luò)上的方法與 自己的實(shí)際需要相差很大,更新構(gòu)件時(shí)不是全部更新,就是更新不全,無法用在軟件上,在研究了幾天之后, 結(jié)合網(wǎng)上的資料和請教學(xué)長,終于找到了一個簡單有效的方法,全局變量保存各構(gòu)件指針,每加入一個構(gòu)件, 保存其指針,在不需要時(shí)便可以調(diào)用函數(shù)void initialise();進(jìn)行初始化界面操作,只保留main_window,菜 單還有組合框三個構(gòu)件。 在后期需要更新界面的一部分時(shí),也可以使用這種思想,比如在輸出定層中有如下代碼段: for(。wm_num7。) { gtk_widget_hide(wmponent[wm_num])。 gtk_widget_destroyed(wmponent[wm_num],NULL)。 } 在這里這個for循環(huán)實(shí)現(xiàn)的功能是將除前七個構(gòu)件之外的構(gòu)件初始化并釋放掉,保證了在不切換功能時(shí),用戶重復(fù)的操作的正確完整性。 輸出操作難點(diǎn) 在進(jìn)行界面輸出時(shí),由于對GTK理解不深,對于界面打印,如果使用標(biāo)準(zhǔn)的文本框的話,數(shù)據(jù)顯示不好控制,界面略顯臃腫,不美觀,所以在再三斟酌之后選擇了使用添加標(biāo)簽的方法進(jìn)行數(shù)據(jù)打印,在確定了方 法之后,又碰到了難題,由于數(shù)據(jù)和字符串相互轉(zhuǎn)化的亂碼問題,在實(shí)現(xiàn)上耗費(fèi)了很大精力,最終,實(shí)現(xiàn)了 兩個相互轉(zhuǎn)化的函數(shù),比較完美的解決了問題,然后進(jìn)行了布局規(guī)劃,輸出時(shí)采用添加橫向組合框,然后在 組合框上添加數(shù)據(jù)標(biāo)簽的方式,在界面上顯示了數(shù)據(jù),再經(jīng)過后期的優(yōu)化,使得輸出在界面的數(shù)據(jù)立體,比較好的展示了跳躍鏈表地特性。6. 結(jié)語 本次課程設(shè)計(jì)通過GTK的學(xué)習(xí),掌握了C語言下的面向?qū)ο缶幊?,進(jìn)一步提高了自己的編程能力,學(xué)習(xí)運(yùn)用了GTK這個面向?qū)ο蟮膱D形化界面庫。在后期調(diào)試階段大量使用linxu下的調(diào)試工具gdb調(diào)試程序,對于linux下的開發(fā)過程有了初步的了解,并進(jìn)一步熟悉了linux下的基礎(chǔ)操作,為以后做linux運(yùn)維打下了基礎(chǔ)。辛苦的付出總是值得的,雖然在課程設(shè)計(jì)制作階段遇見了一個又一個的難題,但通過查找資料,然后解決了問題的那種喜悅令人陶醉,這次課設(shè)雖然歷時(shí)周期短,但我獲得的東西卻是很多的,有壓力才有動力,學(xué)習(xí)最快的方法就是有一個目標(biāo)并且為之奮斗,我相信在以后的學(xué)習(xí)中,我會做很多的東西,然后像這次可是一樣收獲很多的樂趣。 7. 參考文獻(xiàn) 算法與數(shù)據(jù)結(jié)構(gòu)——C語言描述(第三版) 編著:張乃孝、陳光、孫猛 GTK+程序設(shè)計(jì)(C語言版) Syd Logan著 戰(zhàn)曉蘇、王寧等譯15
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1