《Linux基礎(chǔ)》電子課件
《Linux基礎(chǔ)》電子課件,Linux基礎(chǔ),Linux,基礎(chǔ),電子,課件
窗體本講大綱:初始化初始化初始化初始化建立窗口建立窗口建立窗口建立窗口結(jié)結(jié)束束束束應(yīng)應(yīng)用程序用程序用程序用程序回回回回調(diào)調(diào)函函函函數(shù)數(shù)數(shù)數(shù)其他窗體函其他窗體函其他窗體函其他窗體函數(shù)數(shù)數(shù)數(shù)初始化 無論寫哪一個(gè)無論寫哪一個(gè)無論寫哪一個(gè)無論寫哪一個(gè)GTK+GTK+GTK+GTK+程序需要調(diào)用程序需要調(diào)用程序需要調(diào)用程序需要調(diào)用gtk_initgtk_initgtk_initgtk_init函數(shù)對(duì)函數(shù)對(duì)函數(shù)對(duì)函數(shù)對(duì)GTK+GTK+GTK+GTK+庫函數(shù)進(jìn)行初始化。庫函數(shù)進(jìn)行初始化。庫函數(shù)進(jìn)行初始化。庫函數(shù)進(jìn)行初始化。gtk_init()gtk_init()gtk_init()gtk_init()函數(shù)的具體介紹如下函數(shù)的具體介紹如下函數(shù)的具體介紹如下函數(shù)的具體介紹如下表表表表18.118.118.118.1所示:所示:所示:所示:名稱名稱::gtk_init功能:功能:初始化初始化GTK+庫庫頭文件:頭文件:#include函數(shù)原形:函數(shù)原形:voidgtk_init(int*argc,char*argv);參數(shù):參數(shù):argc指向主函數(shù)指向主函數(shù)argc的指針的指針argv指向主函數(shù)指向主函數(shù)argv的指針的指針返回值:返回值:無無建立窗口名稱名稱::gtk_window_new功能:功能:建立窗口建立窗口頭文件:頭文件:#include函數(shù)原形:函數(shù)原形:GtkWidget*gtk_window_new(參數(shù):參數(shù):無無返回值:返回值:無無名稱名稱::gtk_widget_show功能:功能:顯示窗口顯示窗口頭文件:頭文件:#include函數(shù)原形:函數(shù)原形:gtk_widget_show(GtkWidget*window)參數(shù):參數(shù):無無返回值:返回值:無無GTK+GTK+GTK+GTK+的的的的構(gòu)構(gòu)構(gòu)構(gòu)件是件是件是件是GUIGUIGUIGUI的的的的組組成部分。窗口、成部分。窗口、成部分。窗口、成部分。窗口、檢查檢查框、按框、按框、按框、按鈕鈕和和和和編輯編輯字段都字段都字段都字段都屬屬屬屬于于于于構(gòu)構(gòu)構(gòu)構(gòu)件。通常件。通常件。通常件。通常將構(gòu)將構(gòu)將構(gòu)將構(gòu)件和窗口定件和窗口定件和窗口定件和窗口定義為義為指向指向指向指向GtkWidgetGtkWidgetGtkWidgetGtkWidget結(jié)結(jié)構(gòu)構(gòu)構(gòu)構(gòu)的指的指的指的指針針。在。在。在。在GTK+GTK+GTK+GTK+中,中,中,中,GtkWidgetGtkWidgetGtkWidgetGtkWidget是用于所有是用于所有是用于所有是用于所有構(gòu)構(gòu)構(gòu)構(gòu)件和窗口的通用件和窗口的通用件和窗口的通用件和窗口的通用數(shù)數(shù)數(shù)數(shù)據(jù)據(jù)據(jù)據(jù)類類型。型。型。型。GTK+GTK+GTK+GTK+庫進(jìn)庫進(jìn)行初始化后,大多行初始化后,大多行初始化后,大多行初始化后,大多數(shù)數(shù)數(shù)數(shù)應(yīng)應(yīng)用建立一用建立一用建立一用建立一個(gè)個(gè)個(gè)個(gè)主窗口。在主窗口。在主窗口。在主窗口。在GTK+GTK+GTK+GTK+中,主窗口常常被中,主窗口常常被中,主窗口常常被中,主窗口常常被稱稱稱稱為頂層為頂層窗口。窗口。窗口。窗口。頂層頂層窗口不窗口不窗口不窗口不被包含在任何其他窗口被包含在任何其他窗口被包含在任何其他窗口被包含在任何其他窗口內(nèi)內(nèi)內(nèi)內(nèi),所以,所以,所以,所以它沒它沒它沒它沒有上有上有上有上層層窗口。在窗口。在窗口。在窗口。在GTK+GTK+GTK+GTK+中,中,中,中,構(gòu)構(gòu)構(gòu)構(gòu)件具有父子件具有父子件具有父子件具有父子關(guān)關(guān)關(guān)關(guān)系,其中父系,其中父系,其中父系,其中父構(gòu)構(gòu)構(gòu)構(gòu)件是容器,而子件是容器,而子件是容器,而子件是容器,而子構(gòu)構(gòu)構(gòu)構(gòu)件件件件則則是包含在容器中的是包含在容器中的是包含在容器中的是包含在容器中的構(gòu)構(gòu)構(gòu)構(gòu)件。件。件。件。頂層頂層窗口窗口窗口窗口沒沒沒沒有父窗口,但可能成有父窗口,但可能成有父窗口,但可能成有父窗口,但可能成為為其他其他其他其他構(gòu)構(gòu)構(gòu)構(gòu)件的容器。件的容器。件的容器。件的容器。在在在在GTK+GTK+GTK+GTK+中建立中建立中建立中建立構(gòu)構(gòu)構(gòu)構(gòu)件分件分件分件分兩兩兩兩步:建立步:建立步:建立步:建立構(gòu)構(gòu)構(gòu)構(gòu)件,然后使件,然后使件,然后使件,然后使它它它它可以看得可以看得可以看得可以看得見見。gtk_window_new()gtk_window_new()gtk_window_new()gtk_window_new()函函函函數(shù)數(shù)數(shù)數(shù)負(fù)責(zé)負(fù)責(zé)建立窗口。如表建立窗口。如表建立窗口。如表建立窗口。如表18.318.318.318.3所示,所示,所示,所示,gtk_widget_show()gtk_widget_show()gtk_widget_show()gtk_widget_show()函函函函數(shù)數(shù)數(shù)數(shù)負(fù)責(zé)負(fù)責(zé)使使使使它它它它成成成成為為可可可可見見的窗體,如表的窗體,如表的窗體,如表的窗體,如表18.418.418.418.4所示。所示。所示。所示。名稱名稱::gtk_main功能:功能:等待事件的發(fā)生等待事件的發(fā)生頭文件:頭文件:#include函數(shù)原形:函數(shù)原形:voidgtk_main(void);參數(shù):參數(shù):無無返回值:返回值:無無結(jié)束應(yīng)用程序 窗體程序在創(chuàng)建之后需要進(jìn)行推出,而窗體程序在創(chuàng)建之后需要進(jìn)行推出,而窗體程序在創(chuàng)建之后需要進(jìn)行推出,而窗體程序在創(chuàng)建之后需要進(jìn)行推出,而gtk_main_quit()gtk_main_quit()gtk_main_quit()gtk_main_quit()函數(shù)可以結(jié)束程序,它通常函數(shù)可以結(jié)束程序,它通常函數(shù)可以結(jié)束程序,它通常函數(shù)可以結(jié)束程序,它通常在回調(diào)函數(shù)中被調(diào)用。函數(shù)具體內(nèi)容如表在回調(diào)函數(shù)中被調(diào)用。函數(shù)具體內(nèi)容如表在回調(diào)函數(shù)中被調(diào)用。函數(shù)具體內(nèi)容如表在回調(diào)函數(shù)中被調(diào)用。函數(shù)具體內(nèi)容如表18.618.618.618.6所示:所示:所示:所示:名稱名稱::gtk_main_quit功能:功能:結(jié)束應(yīng)用程序結(jié)束應(yīng)用程序頭文件:頭文件:#include函數(shù)原形:函數(shù)原形:voidgtk_main_quit(void);參數(shù):參數(shù):無無返回值:返回值:無無回調(diào)函數(shù)由于程序必須能夠?qū)τ脩舻牟僮髯龀鱿鄳?yīng),在基于由于程序必須能夠?qū)τ脩舻牟僮髯龀鱿鄳?yīng),在基于由于程序必須能夠?qū)τ脩舻牟僮髯龀鱿鄳?yīng),在基于由于程序必須能夠?qū)τ脩舻牟僮髯龀鱿鄳?yīng),在基于GUIGUIGUIGUI的程序設(shè)計(jì)中信號(hào)是必要的。移動(dòng)鼠標(biāo),按下按鈕,敲入正的程序設(shè)計(jì)中信號(hào)是必要的。移動(dòng)鼠標(biāo),按下按鈕,敲入正的程序設(shè)計(jì)中信號(hào)是必要的。移動(dòng)鼠標(biāo),按下按鈕,敲入正的程序設(shè)計(jì)中信號(hào)是必要的。移動(dòng)鼠標(biāo),按下按鈕,敲入正文或者關(guān)閉窗口,將給應(yīng)用軟件的回呼函數(shù)提供信號(hào)。信號(hào)可能需要應(yīng)用軟件來加以處理。如:字處理軟件有使文或者關(guān)閉窗口,將給應(yīng)用軟件的回呼函數(shù)提供信號(hào)。信號(hào)可能需要應(yīng)用軟件來加以處理。如:字處理軟件有使文或者關(guān)閉窗口,將給應(yīng)用軟件的回呼函數(shù)提供信號(hào)。信號(hào)可能需要應(yīng)用軟件來加以處理。如:字處理軟件有使文或者關(guān)閉窗口,將給應(yīng)用軟件的回呼函數(shù)提供信號(hào)。信號(hào)可能需要應(yīng)用軟件來加以處理。如:字處理軟件有使字體變黑的按鈕。如果用戶按下了按鈕,就需要調(diào)用使字體變黑的程序。與此類型,如果用戶關(guān)閉了主窗口,在字體變黑的按鈕。如果用戶按下了按鈕,就需要調(diào)用使字體變黑的程序。與此類型,如果用戶關(guān)閉了主窗口,在字體變黑的按鈕。如果用戶按下了按鈕,就需要調(diào)用使字體變黑的程序。與此類型,如果用戶關(guān)閉了主窗口,在字體變黑的按鈕。如果用戶按下了按鈕,就需要調(diào)用使字體變黑的程序。與此類型,如果用戶關(guān)閉了主窗口,在實(shí)際關(guān)閉窗口以前要進(jìn)行某些處理(如保存文件,清除等)。實(shí)際關(guān)閉窗口以前要進(jìn)行某些處理(如保存文件,清除等)。實(shí)際關(guān)閉窗口以前要進(jìn)行某些處理(如保存文件,清除等)。實(shí)際關(guān)閉窗口以前要進(jìn)行某些處理(如保存文件,清除等)。在在在在GTK+GTK+GTK+GTK+中經(jīng)常產(chǎn)生各種信號(hào),多數(shù)情況下信號(hào)被忽略。以按鈕構(gòu)件為例,應(yīng)用軟件有專門用于按鈕的信號(hào)。當(dāng)用中經(jīng)常產(chǎn)生各種信號(hào),多數(shù)情況下信號(hào)被忽略。以按鈕構(gòu)件為例,應(yīng)用軟件有專門用于按鈕的信號(hào)。當(dāng)用中經(jīng)常產(chǎn)生各種信號(hào),多數(shù)情況下信號(hào)被忽略。以按鈕構(gòu)件為例,應(yīng)用軟件有專門用于按鈕的信號(hào)。當(dāng)用中經(jīng)常產(chǎn)生各種信號(hào),多數(shù)情況下信號(hào)被忽略。以按鈕構(gòu)件為例,應(yīng)用軟件有專門用于按鈕的信號(hào)。當(dāng)用戶按下鼠標(biāo)或釋放鼠標(biāo)按鈕時(shí),當(dāng)用戶電機(jī)鼠標(biāo)時(shí),或者當(dāng)鼠標(biāo)移過按鈕或離開按鈕時(shí)都產(chǎn)生各自的信號(hào)。應(yīng)用戶按下鼠標(biāo)或釋放鼠標(biāo)按鈕時(shí),當(dāng)用戶電機(jī)鼠標(biāo)時(shí),或者當(dāng)鼠標(biāo)移過按鈕或離開按鈕時(shí)都產(chǎn)生各自的信號(hào)。應(yīng)用戶按下鼠標(biāo)或釋放鼠標(biāo)按鈕時(shí),當(dāng)用戶電機(jī)鼠標(biāo)時(shí),或者當(dāng)鼠標(biāo)移過按鈕或離開按鈕時(shí)都產(chǎn)生各自的信號(hào)。應(yīng)用戶按下鼠標(biāo)或釋放鼠標(biāo)按鈕時(shí),當(dāng)用戶電機(jī)鼠標(biāo)時(shí),或者當(dāng)鼠標(biāo)移過按鈕或離開按鈕時(shí)都產(chǎn)生各自的信號(hào)。應(yīng)用程序可以忽略掉一些信號(hào),只對(duì)感興趣的事件加以處理。程序可以忽略掉一些信號(hào),只對(duì)感興趣的事件加以處理。程序可以忽略掉一些信號(hào),只對(duì)感興趣的事件加以處理。程序可以忽略掉一些信號(hào),只對(duì)感興趣的事件加以處理。當(dāng)需要對(duì)信號(hào)進(jìn)行處理時(shí),需要用當(dāng)需要對(duì)信號(hào)進(jìn)行處理時(shí),需要用當(dāng)需要對(duì)信號(hào)進(jìn)行處理時(shí),需要用當(dāng)需要對(duì)信號(hào)進(jìn)行處理時(shí),需要用GTK+GTK+GTK+GTK+登記回調(diào)函數(shù),并將它和構(gòu)件聯(lián)系在一起。構(gòu)件可以登記回調(diào)函數(shù),回調(diào)登記回調(diào)函數(shù),并將它和構(gòu)件聯(lián)系在一起。構(gòu)件可以登記回調(diào)函數(shù),回調(diào)登記回調(diào)函數(shù),并將它和構(gòu)件聯(lián)系在一起。構(gòu)件可以登記回調(diào)函數(shù),回調(diào)登記回調(diào)函數(shù),并將它和構(gòu)件聯(lián)系在一起。構(gòu)件可以登記回調(diào)函數(shù),回調(diào)函數(shù)可與多個(gè)構(gòu)件聯(lián)系在一起。函數(shù)可與多個(gè)構(gòu)件聯(lián)系在一起。函數(shù)可與多個(gè)構(gòu)件聯(lián)系在一起。函數(shù)可與多個(gè)構(gòu)件聯(lián)系在一起。g_signal_connect()g_signal_connect()g_signal_connect()g_signal_connect()函數(shù)用于登記一個(gè)函數(shù)用于登記一個(gè)函數(shù)用于登記一個(gè)函數(shù)用于登記一個(gè)GTK+GTK+GTK+GTK+信號(hào),其功能有點(diǎn)像普通信號(hào)登記函數(shù)信號(hào),其功能有點(diǎn)像普通信號(hào)登記函數(shù)信號(hào),其功能有點(diǎn)像普通信號(hào)登記函數(shù)信號(hào),其功能有點(diǎn)像普通信號(hào)登記函數(shù)signal.signal.signal.signal.當(dāng)某個(gè)空間發(fā)出信號(hào),當(dāng)某個(gè)空間發(fā)出信號(hào),當(dāng)某個(gè)空間發(fā)出信號(hào),當(dāng)某個(gè)空間發(fā)出信號(hào),程序就會(huì)去執(zhí)行由程序就會(huì)去執(zhí)行由程序就會(huì)去執(zhí)行由程序就會(huì)去執(zhí)行由g_signal_connectg_signal_connectg_signal_connectg_signal_connect登記的回調(diào)函數(shù)。函數(shù)內(nèi)容如表登記的回調(diào)函數(shù)。函數(shù)內(nèi)容如表登記的回調(diào)函數(shù)。函數(shù)內(nèi)容如表登記的回調(diào)函數(shù)。函數(shù)內(nèi)容如表18.718.718.718.7所示所示所示所示名稱名稱::g_signal_connect功能:功能:信號(hào)登記函數(shù)信號(hào)登記函數(shù)頭文件:頭文件:#include函數(shù)原形:函數(shù)原形:gulongg_signal_connect(gpointer*object,constgchar*name,GCallbackfunc,gpointerdata);參數(shù):參數(shù):object發(fā)出信號(hào)的控件發(fā)出信號(hào)的控件name信號(hào)名稱信號(hào)名稱func回調(diào)函數(shù)(對(duì)信號(hào)要采取的動(dòng)作)回調(diào)函數(shù)(對(duì)信號(hào)要采取的動(dòng)作)data傳給回調(diào)函數(shù)的數(shù)據(jù)傳給回調(diào)函數(shù)的數(shù)據(jù)返回值:返回值:其它窗體函數(shù)gtk_window_set_title()gtk_window_set_title()gtk_window_set_title()gtk_window_set_title()函函函函數(shù)數(shù)數(shù)數(shù)可以修改程序的可以修改程序的可以修改程序的可以修改程序的標(biāo)題標(biāo)題。窗口的。窗口的。窗口的。窗口的標(biāo)題標(biāo)題會(huì)會(huì)會(huì)會(huì)出出出出現(xiàn)現(xiàn)在在在在標(biāo)題欄標(biāo)題欄中。在中。在中。在中。在X X X X窗體系窗體系窗體系窗體系統(tǒng)統(tǒng)中,中,中,中,標(biāo)題欄標(biāo)題欄被窗體管理器管理,被窗體管理器管理,被窗體管理器管理,被窗體管理器管理,并并并并由程序由程序由程序由程序員員指定。指定。指定。指定。標(biāo)題應(yīng)該標(biāo)題應(yīng)該幫幫幫幫助用助用助用助用戶戶區(qū)區(qū)區(qū)區(qū)分分分分當(dāng)當(dāng)當(dāng)當(dāng)前窗體前窗體前窗體前窗體與與與與其其其其它它它它窗體。窗體。窗體。窗體。gtk_window_set_title(GTK_WINDOW(window),”MainWindow”);gtk_window_set_title(GTK_WINDOW(window),”MainWindow”);gtk_window_set_title(GTK_WINDOW(window),”MainWindow”);gtk_window_set_title(GTK_WINDOW(window),”MainWindow”);gtk_window_get_resizable()gtk_window_get_resizable()gtk_window_get_resizable()gtk_window_get_resizable()函函函函數(shù)數(shù)數(shù)數(shù)可以可以可以可以獲獲得窗體的伸得窗體的伸得窗體的伸得窗體的伸縮縮屬屬屬屬性,系性,系性,系性,系統(tǒng)統(tǒng)默默默默認(rèn)認(rèn)窗體是可伸窗體是可伸窗體是可伸窗體是可伸縮縮的。的。的。的。gtk_window_get_resizable()gtk_window_get_resizable()gtk_window_get_resizable()gtk_window_get_resizable()函函函函數(shù)數(shù)數(shù)數(shù)有一有一有一有一個(gè)個(gè)個(gè)個(gè)返回返回返回返回值值,如果可以伸如果可以伸如果可以伸如果可以伸縮為縮為TRUETRUETRUETRUE,如果不可以伸,如果不可以伸,如果不可以伸,如果不可以伸縮為縮為FALSEFALSEFALSEFALSE。gtk_window_set_resizable()gtk_window_set_resizable()gtk_window_set_resizable()gtk_window_set_resizable()函函函函數(shù)數(shù)數(shù)數(shù)可以修改窗體的伸可以修改窗體的伸可以修改窗體的伸可以修改窗體的伸縮縮屬屬屬屬性,由第二性,由第二性,由第二性,由第二參數(shù)參數(shù)參數(shù)參數(shù)指定。以上指定。以上指定。以上指定。以上兩個(gè)兩個(gè)兩個(gè)兩個(gè)函函函函數(shù)數(shù)數(shù)數(shù)的具體的具體的具體的具體內(nèi)內(nèi)內(nèi)內(nèi)容如表容如表容如表容如表18.1018.1018.1018.10所示:所示:所示:所示:gtk_window_set_resizable(GTK_WINDOW(window),FALSE);gtk_window_set_resizable(GTK_WINDOW(window),FALSE);gtk_window_set_resizable(GTK_WINDOW(window),FALSE);gtk_window_set_resizable(GTK_WINDOW(window),FALSE);標(biāo)題
收藏
編號(hào):48760993
類型:共享資源
大?。?span id="r1394j3" class="font-tahoma">33.07MB
格式:ZIP
上傳時(shí)間:2022-01-14
30
積分
- 關(guān) 鍵 詞:
-
Linux基礎(chǔ)
Linux
基礎(chǔ)
電子
課件
- 資源描述:
-
《Linux基礎(chǔ)》電子課件,Linux基礎(chǔ),Linux,基礎(chǔ),電子,課件
展開閱讀全文
- 溫馨提示:
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ì)自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請(qǐng)勿作他用。