在設(shè)計Windows窗口程序的過程中,使用者與程序之間的人機(jī)交互,如:數(shù)據(jù)的輸入和接收、系統(tǒng)信息的反饋等都是以窗口的形式提供的,這種窗口就是對話框。
在易語言中,按對話框建立方式的不同,可將對話框分為3種類型,即:預(yù)定義對話框、通用對話框和自定義對話框,它們可以通過以下方法分別建立:
① 利用信息框函數(shù)建立提示類對話框。
② 使用易語言提供的通用對話框控件來創(chuàng)建,如:打開文件、保存文件、字體設(shè)置等。
③ 使用窗體和標(biāo)準(zhǔn)控件根據(jù)需要進(jìn)行設(shè)計完成,這種對話框稱為自定義對話框或定制對話框。
按對話框執(zhí)行方式原理的不同,可分為模式對話框和無模式對話框。
l 模式對話框就是在繼續(xù)其他操作前必須先關(guān)閉該對話框。
l 無模式對話框則允許在應(yīng)用程序與對話框之間進(jìn)行切換,而不必關(guān)閉。
提示類對話框很簡單,比如我們在需要提示的位置前使用信息框函數(shù)就可以。
例:在程序運(yùn)行前,先提示一些信息,詢問使用者是否確定要運(yùn)行本程序,并根據(jù)使用者的選擇來決定程序運(yùn)行還是退出。
這個程序很簡單,我們只要在啟動窗口創(chuàng)建后詢問一下使用者,代碼如下:
在這里我們可以看到,信息框函數(shù)有三個參數(shù),第一個參數(shù)是提示框的內(nèi)容,第二個參數(shù)是顯示的按鈕,第三個參數(shù)是提示框的標(biāo)題,具體的說明可以看一下易語言的提示信息。
自定義對話框就是編程者根據(jù)應(yīng)用程序的實(shí)際需要設(shè)計一個窗體。
建立自定義對話框的方法和步驟如下:
① 設(shè)計對話框界面,即設(shè)計對話框窗體、向窗體中添加相應(yīng)的控件、調(diào)整窗體內(nèi)的控件布局、設(shè)置窗體的控件的屬性等。
② 利用載入函數(shù),將窗體以模式對話框或無模式對話框的方式顯示出來。
例:設(shè)計一個能同時輸入學(xué)號、姓名、成績的對話框。
跟我做:
1.新建一個“窗口程序”。
2.添加一個文字標(biāo)簽,用顯示輸入的信息。
3.用菜單編輯器建立一個菜單。
主菜單:成績管理
子菜單:....輸入信息
4.在“插入”菜單中選擇“窗口”,添加一個新窗口。
5.在新窗口中加入3個文字標(biāo)簽、2個命令按鈕、3個編輯框,設(shè)置好各控件的屬性及布局后,如下圖所示:
6.單擊“工作夾”中的“程序”選項,在“窗口”中選擇“_啟動窗口”,對菜單“成績管理”中的“輸入信息”菜單項進(jìn)行事件程序處理:
載入 (窗口1, , 真)
7.在“窗口1”中,對確定和取消按鈕進(jìn)行事件處理:
8.運(yùn)行程序,測試運(yùn)行結(jié)果。
提示:
在對窗口1的確定按鈕進(jìn)行事件處理時,我們還可以加一些判斷語句,如果輸入的信息為空,則提示一下必須輸入數(shù)據(jù)。
窗口1中所用的變量我們建議用全局變量,以名在二個窗口中傳遞時出錯。
以上例子就是一個自定義對話框,其實(shí)自定義對話框的形式、內(nèi)容有很多,并沒有進(jìn)行什么特別的限制,有時這個對話框甚至可以做的非常復(fù)雜,當(dāng)然,一般的對話框只是進(jìn)行一些信息提示,簡單的數(shù)據(jù)輸入、輸出之類。
通用對話框其實(shí)是一個控件,它和我們以前用過的按鈕、文字標(biāo)簽等控件是一樣的,在使用之前,必須從控件箱中拖到設(shè)計窗口中,這樣才可以使用。通用對話框控件在設(shè)計階段可以被看到,但在程序運(yùn)行時是不可見的,所以拖放通用對話框控件時,可以把它放在窗口的任意位置。
在這里,我們以打開文件對話框為例,簡單介紹一下通用對話框的使用。
例:設(shè)計一個窗體,向窗體中加一個按鈕控件、通用對話框控件、圖片框控件、文字標(biāo)簽控件,利用通用對話框打開一個圖片文件,并將該圖片文件顯示到圖片框中,將該圖片文件的路徑及文件名顯示到文字標(biāo)簽中。
跟我做:
1.新建一個“窗口程序”。
2.從控件箱中拖一個文字標(biāo)簽、按鈕和圖片框,設(shè)置各組件的位置與屬性,然后拖一個通用對話框控件到任意位置,最終效果如圖:
3.為按鈕添加單擊事件:
4.運(yùn)行程序,單擊按鈕,選擇一個圖片,看是否能正確顯示。
在這里,我們單擊“選擇圖片文件”按鈕時,打開的對話框默認(rèn)只顯示JPG文件,這是因為在代碼:
通用對話框1.過濾器 = “所有文件|*.*|BMP圖片|*.bmp|JPEG圖片|*.jpg|GIF圖片|*.gif”
通用對話框1.初始過濾器 = 2
這里我們共有4個過濾器,指定的初始過濾器是第2個,則為JPEG圖片,在這里要注意是從0開始的。
通用對話框除了打開文件以外,還可以設(shè)置字體、保存文件等,這些應(yīng)用和打開文件差不多,有興趣的同學(xué)可以做一下課后習(xí)題。
請你利用通用對話框控件編寫一個應(yīng)用程序。在窗體中添加一個通用對話框控件、一個編輯框、兩個命令按鈕,當(dāng)使用者單擊第一個按鈕時,顯示一個打開文件的對話框,讓使用者從中選擇一個文件,在對話框中單擊“確定”按鈕后,可將選擇的文件的路徑及文件名顯示到編輯框中。當(dāng)使用者單擊第二個按鈕時,可顯示字體對話框,用于設(shè)置編輯框中的文字的字體、字號、樣式、效果。
更多建議: