版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、易語言編程基本操作- 1 - / 50目 錄目 錄2第一部分易語言入門3第一課走進(jìn)“易”世界3一、打開“易語言”設(shè)計(jì)窗口3二、認(rèn)識(shí)“易語言”3三、第一個(gè)易程序5四、小結(jié)6第二課簡(jiǎn)單的人機(jī)交互7一、第一個(gè)交互程序7二、小結(jié)9第三課按鈕與標(biāo)簽的綜合運(yùn)用10第四課圖文并茂12第五課看看計(jì)算機(jī)的計(jì)算能力14第六課讓世界豐富多彩16第七課順序程序結(jié)構(gòu)18第八課猜數(shù)(選擇程序結(jié)構(gòu))21第九課多分支控制結(jié)構(gòu)語句25第十課練習(xí)27一、選擇題:27二、編程題:27第十一課循環(huán)程序結(jié)構(gòu)29第十二課循環(huán)程序結(jié)構(gòu)練習(xí)33一、選擇題33二、編程題34第十三課菜單的設(shè)計(jì)36一、菜單的基本概念36二、菜單編輯器的打開36三
2、、設(shè)計(jì)下拉式菜單37第十四課對(duì)話框41一、提示類對(duì)話框41二、自定義對(duì)話框42三、通用對(duì)話框43附錄實(shí)例應(yīng)用薈萃45第一部分易語言入門第一課走進(jìn)“易”世界易語言介紹易語言是一款全中文全可視跨平臺(tái)的編程工具,由大連大有吳濤易語言軟件開發(fā)有限公司設(shè)計(jì)開發(fā)的,它的特點(diǎn)是全中文化,入門要求低,幾乎只要懂得使用計(jì)算機(jī)和文字輸入的人都可以進(jìn)行程序設(shè)計(jì),而且它的開發(fā)語言也是全中文的、生活化,這在今后的學(xué)習(xí)中我們會(huì)深刻體會(huì)到它的“易”。讓我們一起進(jìn)入“易”的世界吧!一、打開“易語言”設(shè)計(jì)窗口易語言本身也是一個(gè)程序,所以易語言的打開方式和我們以往學(xué)習(xí)的軟件打開方式一樣,在正常安裝易語言的前提下,我們可以通過以下
3、二種方法打開易語言的設(shè)計(jì)窗口:1在桌面上直接雙擊易語言圖標(biāo) 打開;2可以通過“開始菜單”程序易語言4.09測(cè)試版二、認(rèn)識(shí)“易語言”易語言程序運(yùn)行后,可以看到如下圖所示的新建對(duì)話框,可以根據(jù)需要選擇相應(yīng)的功能模塊進(jìn)行操作。我們先來熟悉一下易語言的整個(gè)環(huán)境,請(qǐng)先點(diǎn)“取消”按鈕,我們來瀏覽一下易語言窗口的各個(gè)組成部分。如下圖所示:狀態(tài)夾對(duì)齊工具欄工作夾標(biāo)準(zhǔn)工具欄菜單欄標(biāo)題欄易語言窗口包含以下內(nèi)容:1標(biāo)題欄2菜單欄3工具欄(標(biāo)準(zhǔn)工具欄、對(duì)齊工具欄)4工作夾5狀態(tài)夾我們?cè)谝院蟮氖褂眠^程中,使用最多的是“工作夾”和“狀態(tài)夾”。三、第一個(gè)易程序現(xiàn)在讓我們來向易語言打個(gè)招呼吧。通過易語言來做第一個(gè)程序,程序運(yùn)
4、行后的最終效果如圖所示:準(zhǔn)備:在做第一程序之前,我們先要來了解一下易語言中的第一對(duì)象啟動(dòng)窗口。1選擇菜單“程序”“新建”或直接在標(biāo)準(zhǔn)工具欄中單擊 按鈕。2在打開的“新建”對(duì)話框中選擇“windows窗口程序”,單擊確定。3利用“工作夾”修改啟動(dòng)窗口的大小,如下圖所示:注意:上圖中的方框,要確保該列表項(xiàng)中的內(nèi)容為“_啟動(dòng)窗口(窗口)”,雖然第一個(gè)程序現(xiàn)在只有一個(gè)對(duì)象,但我們要養(yǎng)成一個(gè)良好的習(xí)慣,在修改對(duì)象屬性前先要確定當(dāng)前選擇的對(duì)象是否為需要修改的對(duì)象。把“_啟動(dòng)窗口”的寬度與高度設(shè)置為如圖所示大小,這時(shí)你可以看到設(shè)計(jì)區(qū)的“_啟動(dòng)窗口”的大小已經(jīng)改變。4添加一個(gè)“標(biāo)簽”對(duì)象,在“窗口組件箱”中選
5、擇“標(biāo)簽”,如上圖所示。5在“_啟動(dòng)窗口”中拖出一個(gè)標(biāo)簽,試一試:并利用“工作夾”中的“屬性”選項(xiàng)進(jìn)行設(shè)置標(biāo)簽文字,使之顯示如題所示式樣,也可自定。完成以上步驟所,單擊“標(biāo)準(zhǔn)工具欄”中的運(yùn)行按鈕或“運(yùn)行”菜單中的“運(yùn)行”,也可以直接按F5運(yùn)行程序。請(qǐng)同學(xué)們說一下你看到運(yùn)行后的程序窗口,你想到有哪些地方和我們以前打開的窗口有什么不同?提示:可以打開計(jì)算機(jī)器、畫圖程序進(jìn)行比較。你能打造一個(gè)個(gè)性化的啟動(dòng)窗口嗎?四、小結(jié)這是我們接觸“易語言”世界的第一天,雖然在這節(jié)課中我們并沒有體會(huì)到“易語言”的強(qiáng)大功能,但我們已經(jīng)體會(huì)到它的“易”,全中文的環(huán)境,這對(duì)我們來說是非常容易上手和操作的,易語言不僅僅可以做
6、出各種應(yīng)用程序,而且也可以制作游戲,有興趣的同學(xué)可以在新建程序?qū)υ捴姓乙幌拢渲芯陀幸恍┙?jīng)典的小游戲,如“推箱子”。我們不僅僅要會(huì)玩,而且還應(yīng)該會(huì)自己動(dòng)手做,當(dāng)然,任何一門計(jì)算機(jī)語言的學(xué)習(xí)并不是像今天上課中的例子那么簡(jiǎn)單的,而需要我們花費(fèi)大量的時(shí)間與精力來學(xué)習(xí),因此從現(xiàn)在開始,你應(yīng)該準(zhǔn)備接受各項(xiàng)挑戰(zhàn),戰(zhàn)勝自我,從而進(jìn)入精彩的計(jì)算機(jī)程序世界,計(jì)算機(jī)程序世界歡迎你的到來。第二課簡(jiǎn)單的人機(jī)交互前一節(jié)課我們已經(jīng)熟悉了易語言的環(huán)境,也嘗試著編寫了第一個(gè)易程序,從這節(jié)課開始,我們就要用易語言來開發(fā)具有人機(jī)交互功能的程序,通過這些簡(jiǎn)單的小程序,一步一步深入學(xué)習(xí)易語言,相信在學(xué)完之后你就能開發(fā)出功能強(qiáng)大的程序
7、,而且你還可以開發(fā)自己的游戲讓大家一起來玩。一、第一個(gè)交互程序這個(gè)課我們要實(shí)現(xiàn)一個(gè)簡(jiǎn)單的交互程序,在組件窗口中拖一個(gè)按鈕組件到啟動(dòng)窗口中,當(dāng)點(diǎn)擊按鈕時(shí)提示“你成功了!”。效果如圖:跟我做:第一步:新建一個(gè)“Windows窗口程序”第二步:設(shè)置“_啟動(dòng)窗口”的大?。蛇x)第三步:在組件窗口中選擇按鈕第四步:在“_啟動(dòng)窗口”中拖出一個(gè)按鈕,并設(shè)置按鈕的標(biāo)題為“點(diǎn)我吧!”第五步:設(shè)置按鈕點(diǎn)擊時(shí)的事件處理程序1先單擊“_啟動(dòng)窗口”中的按鈕,以確保該按鈕被選擇2在“工作夾”的屬性欄中查看當(dāng)前組件是否為“按鈕1”,如下圖3在上圖位置中選擇“被單擊”,這時(shí)預(yù)覽設(shè)計(jì)窗口將變成程序編輯窗口,如下圖所示,我們要在
8、子程序“_按鈕1_被單擊”中添加一段程序,實(shí)現(xiàn)更改按鈕標(biāo)題的功能。在輸入程序時(shí),我們可以輸入號(hào)框這樣的格式,你也可以輸入號(hào)框這樣的格式,其中號(hào)框輸入的是每個(gè)漢字拼音第一個(gè)字母,沒有聲母的,則要輸入全拼或前2位,如“按”、“二”,則要輸入“an”、“er”。格式輸入完成后敲回車鍵或把光標(biāo)移到另一行時(shí),就自己變成格式的樣式。4運(yùn)行程序,查看效果。同學(xué)們,你知道如何返回“預(yù)覽設(shè)計(jì)窗口”嗎?提示:常用的二種方法,1是關(guān)閉當(dāng)前窗口(不是整個(gè)易程序哦?。?是在工作夾中選擇“窗口”“_啟動(dòng)窗口”。你能結(jié)合標(biāo)簽和按鈕,當(dāng)單擊按鈕時(shí)改變標(biāo)簽的標(biāo)題嗎?點(diǎn)擊按鈕后能讓按鈕隱藏嗎?二、小結(jié)這是第一個(gè)易交互程序,在這
9、節(jié)課中,我們初次接觸到“程序設(shè)計(jì)”,雖然只是短短一句話,但我們已經(jīng)可以實(shí)現(xiàn)人機(jī)交互。我們?cè)谧霭粹o交互時(shí)可以看到,不僅僅是單擊,還有好多按鈕交互事件,如果你充分利用這些事件,就可以做出各種應(yīng)用程序。第三課按鈕與標(biāo)簽的綜合運(yùn)用文字標(biāo)簽我們?cè)诘谝还?jié)課的時(shí)候已經(jīng)學(xué)習(xí)并使用過,在上節(jié)課中我們學(xué)習(xí)了按鈕,并對(duì)按鈕事件有了初步的應(yīng)用,這節(jié)課我們要在前二節(jié)課的基礎(chǔ)上,進(jìn)行比較綜合性的應(yīng)用練習(xí)。我們要設(shè)計(jì)一個(gè)如圖所示的窗體界面。其中包括1個(gè)窗體、1個(gè)文字標(biāo)簽和4個(gè)命令按鈕。程序的功能:?jiǎn)螕簟帮@示時(shí)間”按鈕時(shí),將在標(biāo)簽中顯示當(dāng)前的時(shí)間,單擊“改變字體和顏色”按鈕時(shí),標(biāo)簽中顯示的內(nèi)容的字體改為隸書、字號(hào)大小為12,
10、并將標(biāo)簽的背景顏色設(shè)置為藍(lán)色、前景顏色(文字的顏色)設(shè)置為黃色,單擊“加邊框”按鈕時(shí),將給標(biāo)簽加上立體邊框,單擊“退出”按鈕時(shí)結(jié)束程序的執(zhí)行。跟我做:第一步:新建一個(gè)“Windows窗口程序”第二步:從組件窗口中選擇相應(yīng)的組件添加到窗口中,包括4個(gè)按鈕、1個(gè)文字標(biāo)簽,調(diào)整組件的位置大小。第三步:在工作夾窗口的屬性標(biāo)簽項(xiàng)中,設(shè)置按鈕的名稱分別為“顯示時(shí)間”、“改變字體和顏色”、“加邊框”和“退出”。刪除文字標(biāo)簽的標(biāo)題。第四步:依次選擇按鈕,在事件中選擇“被單擊”,在程序編輯窗口中輸入相應(yīng)程序代碼,如下圖所示:第五步:?jiǎn)螕簟斑\(yùn)行”,測(cè)試程序是否正常。說明:如果文字標(biāo)簽太小,顯示的內(nèi)容太多,要設(shè)置換
11、行的話,可以通過以下方法設(shè)置:在程序運(yùn)行階段,通過程序來設(shè)置,可以在要換行的位置播放“換行符”標(biāo)簽1.標(biāo)題 “現(xiàn)在時(shí)間:” 換行符 到文本 (取現(xiàn)行時(shí)間 ()在程序設(shè)計(jì)階段,可以通過輸入回車鍵來進(jìn)行換行。以上程序其實(shí)很容易理解,基本都是生活上的語言,但這是第一次用到函數(shù),如到文本()、取現(xiàn)行時(shí)間()以及銷毀(),在這里簡(jiǎn)單地介紹一下:到文本()因?yàn)槲淖謽?biāo)簽顯示的內(nèi)容都是文字(也就是文本),所以如果要顯示時(shí)間的話,就要進(jìn)行格式轉(zhuǎn)換,在易語言有很多類型,如文本型、數(shù)值型、時(shí)間日期型、邏輯型等等,以后在使用過程中我們會(huì)慢慢接觸到各種變量類型。到文本()函數(shù)就是把非文本類型的內(nèi)容轉(zhuǎn)換成文本型。另外二個(gè)
12、函數(shù)同學(xué)們可以通過字面意思理解一下。同學(xué)們上機(jī)練習(xí)時(shí)請(qǐng)自行設(shè)計(jì)一個(gè)程序,使用按鈕來控制文字標(biāo)簽、窗口的各種屬性。相信大家一定會(huì)做出很多有趣的程序來。第四課圖文并茂上節(jié)課我們已經(jīng)學(xué)會(huì)了簡(jiǎn)單的交互,這節(jié)課我們就要利用易語言做一個(gè)介紹紹興的多媒體程序,讓更多的人了解紹興、喜歡紹興。我們要設(shè)計(jì)這樣一個(gè)程序:程序運(yùn)行后將只顯示三個(gè)按鈕:黃酒、石橋、名人,當(dāng)單擊其中一個(gè)按鈕后,在程序窗口的左邊顯示該按鈕相應(yīng)的文字介紹,如紹興黃酒的介紹,在程序窗口的右邊顯示該按鈕相應(yīng)的圖片。在制作過程中,我們可以先做一個(gè),掌握以后再把后面二個(gè)加上去,但在本教材中一次完成,請(qǐng)根據(jù)自己的實(shí)際情況,決定是否需要分步完成。分步完成
13、的同學(xué)要注意三個(gè)圖片框一開始擺放的時(shí)候不要相互重疊,以免圖片框相互嵌套。如果出現(xiàn)嵌套情況,本程序的效果可能無法實(shí)現(xiàn)。先在預(yù)覽設(shè)計(jì)窗口中拖放一個(gè)文字標(biāo)簽(上圖),并把標(biāo)題設(shè)為空;拖放三個(gè)按鈕(上圖),設(shè)好標(biāo)題及位置;最后拖放三個(gè)圖片框(上圖),注意三個(gè)圖片框一開始擺放的時(shí)候不要相互重疊,以免圖片框嵌套。跟我做:1完成以上工作后,我們先要把圖片框中的圖片設(shè)置好,設(shè)置好圖片后最調(diào)整圖片框的位置與大小。a選中圖片框1,在工作夾窗口的屬性標(biāo)簽中找到“圖片”項(xiàng),點(diǎn)擊 ,在彈出的對(duì)話框中選擇相應(yīng)的圖片,并在“顯示方式”中選擇“縮放圖片”,讓圖片適應(yīng)圖片框的大小。b依次把圖片框2、圖片框3設(shè)置好。c把3個(gè)圖片
14、框的寬度與高度設(shè)置為175,把位置設(shè)置為“左邊180,頂邊8”,具體大小位置可能與實(shí)際略有不同,要注意調(diào)整。d把3個(gè)圖片框的可視設(shè)置為假,即在程序運(yùn)行時(shí)不可見。2完成以上步驟后,你將只能看到圖片框3,圖片框1、2已經(jīng)被圖片框3覆蓋,而在程序運(yùn)行時(shí)3個(gè)圖片框?qū)⒍疾豢梢姟?選中“按鈕1”即“黃酒”按鈕,在工作夾窗口中選擇“被單擊”事件,切換到程序編輯窗口。完成如下圖所示程序:4依次設(shè)置按鈕2、按鈕3單擊時(shí)標(biāo)簽1的標(biāo)題內(nèi)容和圖片框的可視情況。5運(yùn)行程序,測(cè)試程序是否成功。同學(xué)們,你運(yùn)行程序時(shí)是否出現(xiàn)以下情況?1標(biāo)簽中的文字沒有完整顯示出來。2圖片太大,沒有完整顯示。3各個(gè)按鈕點(diǎn)擊后,最后只能看到圖片
15、框3中的圖片,點(diǎn)“黃酒”、“石橋”按鈕時(shí)無法顯示相應(yīng)的圖片。除了上述問題以外你還遇到了什么問題,你解決了多少問題,幫助別的同學(xué)解決了多少問題,你請(qǐng)同學(xué)幫助解決了多少問題?請(qǐng)你依照教材例子,但一個(gè)介紹學(xué)校的多媒體程序。小結(jié):這節(jié)課是第一個(gè)比較完整的交互性程序,由于第一次做,而且一下子用了三個(gè)圖片框,可視、不可視,位置、大小等可能讓你覺得原來易語言并不容易,而且還有那么一點(diǎn)點(diǎn)煩、難。同學(xué)們,相信我,這只是你第一次設(shè)計(jì)比較完整的交互性程序所引起的恐懼感,其實(shí)這是為了讓你更快掌握易語言,設(shè)計(jì)出更好的作品,如果你能闖過這一關(guān),那么易語言就會(huì)讓你感覺真的很“易”。第五課看看計(jì)算機(jī)的計(jì)算能力前幾節(jié)課我們的程
16、序雖然有些會(huì)變化,但這個(gè)變都是我們事先設(shè)定的,在程序運(yùn)行過程沒有辦法臨時(shí)改變,比較第三節(jié)課時(shí),我們要求設(shè)置字體大小為12,在運(yùn)行時(shí)我想設(shè)置成14就不行了,那是不是沒有辦法了呢?答案當(dāng)然是肯定的,既然我們說易語言很強(qiáng)大,這點(diǎn)小問題當(dāng)然難不到它了。這節(jié)課我們要學(xué)習(xí)編輯框控件,有了這個(gè)編輯框,我們不僅能隨心所欲地在程序運(yùn)行過程改變,而且還能讓電腦幫我們計(jì)算,比如計(jì)算機(jī)圓的周長(zhǎng)與面積。例:編寫求圓的面積與周長(zhǎng)的程序,用一個(gè)文本編輯框輸入圓的半徑,用一個(gè)標(biāo)簽組件顯示計(jì)算出來的圓的面積,用另外一個(gè)標(biāo)簽組件顯示圓的周長(zhǎng)。跟我做:1新建一個(gè)“窗口程序”。2從窗口組件箱向啟動(dòng)窗口添加2個(gè)按鈕、5個(gè)文字標(biāo)簽和1個(gè)
17、編輯框組件,并將他們的位置擺放如下圖所示。3設(shè)置各組件屬性,最好設(shè)計(jì)預(yù)覽窗口如圖所示:4選擇“計(jì)算”按鈕,設(shè)置在單擊時(shí)的事件如下:半徑到數(shù)值(編輯框1.內(nèi)容)面積3.14半徑*半徑周長(zhǎng)2*3.14*半徑標(biāo)簽4.標(biāo)題=到文本(面積)標(biāo)簽5.標(biāo)題=到文本(周長(zhǎng))提示:在第一行輸入后,敲下回車鍵后會(huì)提示找到不“半徑”這個(gè)變量,這時(shí)我們只要選擇新增為局部變量,數(shù)據(jù)類型為“雙精度小數(shù)型”即可,后面的面積、周長(zhǎng)都一樣。最終效果如圖:5把“退出”按鈕的事件“被單擊”時(shí)也處理好即可。說明:編輯框中輸入的數(shù)據(jù)為文本型,所以我們一開始就要把這個(gè)數(shù)據(jù)轉(zhuǎn)換為數(shù)值型,以便進(jìn)行加減乘除;文字標(biāo)簽也為文本型,所以最后我們要
18、把計(jì)算得到的數(shù)據(jù)轉(zhuǎn)換為文本型。6運(yùn)行程序,在編輯框中輸入一個(gè)數(shù)字,點(diǎn)擊“計(jì)算”按鈕測(cè)試結(jié)果是否正確。已知:球體的體積計(jì)算公式為:v=r 3,球的表面積公式為:f=4r 2,此處的r為球體的半徑。要求:設(shè)計(jì)一個(gè)程序,用編輯框輸入球的半徑r ,單擊一個(gè)按鈕時(shí),進(jìn)行計(jì)算,并將計(jì)算結(jié)果即球的體積的表面積分別用2個(gè)文字標(biāo)簽顯示出來。你會(huì)利用編輯框做一個(gè)簡(jiǎn)單的記事本嗎?試著實(shí)踐一下:當(dāng)程序運(yùn)行后,可以調(diào)整程序窗口的大小,而且程序中的編輯框能根據(jù)程序窗口的大小而自動(dòng)改變大小,始終與窗口大小保持一致。你可以先打開Windows附件中的記事本,看看這個(gè)記事本在窗口大小發(fā)生變化時(shí)它的編輯框是如何變化的。第六課讓世
19、界豐富多彩上節(jié)課我們已經(jīng)掌握了文字標(biāo)簽的變化,但我們的文字都是黑色的,有沒有辦法讓文字的顏色根據(jù)需要而改變呢?答案當(dāng)然是肯定的,這節(jié)課就讓我們一起來完成這個(gè)任務(wù)吧!例:編寫一個(gè)程序,在程序窗口中可以選擇文字標(biāo)簽中文字的顏色和文字標(biāo)簽的背景色。跟我做:1新建一個(gè)“窗口程序”。2從窗口組件箱向啟動(dòng)窗口添加2個(gè)顏色選擇器組件(在基本組件2中)、3個(gè)文字標(biāo)簽,并將他們的屬性設(shè)置好,位置擺放如下圖所示。3選擇“顏色選擇器1”即改變文字顏色的那個(gè)顏色選擇器,在工作夾的屬性選項(xiàng)中選擇“顏色被改變時(shí)”事件,輸入程序:標(biāo)簽1.文本顏色 顏色選擇器1.顏色顏色選擇器2同樣操作,程序?yàn)椋簶?biāo)簽1.背景顏色 顏色選擇器
20、2.顏色4運(yùn)行程序進(jìn)行測(cè)試,查看效果。如果一切順利的話,相信你現(xiàn)在應(yīng)該已經(jīng)能夠改變文字標(biāo)簽的文字顏色和背景色了,現(xiàn)在我們對(duì)這個(gè)程序進(jìn)行改進(jìn)一下,增加一個(gè)調(diào)整文字大小的組件。例:利用滑塊組件,調(diào)節(jié)文字標(biāo)簽中的文字大小,從5到80進(jìn)行調(diào)節(jié)。跟我做:1在上面的例子中增加一個(gè)滑塊組件,并調(diào)整各組件的位置,如下圖所示:2設(shè)置滑塊組件的屬性,使最小位置的值為5,最大位置的值為80,即為我們要設(shè)置文字大小的范圍。3為滑塊組件添加事件“位置被改變”,程序如下:標(biāo)簽1.字體.字體大小 滑塊條1.位置4運(yùn)行程序進(jìn)行測(cè)試,檢驗(yàn)效果。程序運(yùn)行時(shí)進(jìn)行相應(yīng)設(shè)置時(shí)應(yīng)該可以看到如下圖所示的效果:提示:我們?cè)谧龌瑝K組件的位置時(shí)
21、,也可以設(shè)置為1到16,只要在程序中改為:標(biāo)簽1.字體.字體大小 滑塊條1.位置× 5但一般我們不提倡這樣做,因?yàn)檫@樣做只會(huì)增加程序的復(fù)雜性,影響程序的可讀性,一般能夠簡(jiǎn)化的程序,就盡量不要使它復(fù)雜化,雖然現(xiàn)在的計(jì)算機(jī)處理速度都非???,但在編制程序時(shí),我們還是要講究程序運(yùn)行效率,用最少的時(shí)間,最快的速度處理一件事,是我們的追求。試著實(shí)踐一下:當(dāng)滑塊在最左邊(即最小時(shí))我們讓文字標(biāo)簽中的文字最大,而滑塊在最右邊(即最大時(shí))我們讓文字標(biāo)簽中的文字最小。即:滑塊從5到80進(jìn)行變化,而文字大小從80到5變化。第七課順序程序結(jié)構(gòu)通過前幾節(jié)課的學(xué)習(xí),我們已經(jīng)知道易語言是通過事件來激活程序的運(yùn)行,
22、比如“按鈕”的“單擊”事件,這些事件子程序組成一個(gè)大的易語言程序,雖然我們?cè)诔绦蜻\(yùn)行過程中,但就一個(gè)事件來看,它還是采用了像Pascal、VB、VC那樣的結(jié)構(gòu)化程序結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。在這節(jié)課中,我們先來看一下順序程序結(jié)構(gòu),順序程序結(jié)構(gòu)就是指程序的運(yùn)行總是按照語句出現(xiàn)的先后次序,從上往下有順序地執(zhí)行的一種線性流程結(jié)構(gòu),它是程序設(shè)計(jì)過程中最基本、最簡(jiǎn)單的程序結(jié)構(gòu)。例:設(shè)計(jì)一個(gè)程序,把二個(gè)編輯框中的文本連接起來后得到的新文本放在第三個(gè)編輯框中。跟我做:1新建一個(gè)“窗口程序”。2從控件箱中拖3個(gè)文字標(biāo)簽、3個(gè)編輯框和2個(gè)按鈕,并調(diào)整各組件的位置,使它們?nèi)缦聢D所示:3在工作夾中的屬性
23、選項(xiàng)中設(shè)置各組件的屬性,其中文字標(biāo)簽標(biāo)題分別為:文本1、文本2、新文本,按鈕的標(biāo)題分別為:連接、退出。4選擇“連接”按鈕,在屬性選項(xiàng)中選擇“被單擊”事件,在打開的設(shè)計(jì)窗口中輸入:5設(shè)置“退出”的退出事件。6運(yùn)行程序,在文本1的編輯框中輸入:1234,在文本2的編輯框中輸入:abcd,單擊“連接”按鈕,如果看到如下圖所示的結(jié)果,則程序執(zhí)行成功。7把程序進(jìn)行適當(dāng)修改:文本1 編輯框1.內(nèi)容輸出調(diào)試文本 (文本1)文本2 編輯框2.內(nèi)容輸出調(diào)試文本 (文本2)文本3 文本1 文本2輸出調(diào)試文本 (文本3)編輯框3.內(nèi)容 文本3注意楷體字體,我們?cè)诿恳痪涑绦蛘Z句后加了一個(gè)輸出調(diào)試文本()語句,這時(shí)再執(zhí)
24、行程序,你可能沒有察覺到程序運(yùn)行的變化,但你可以在易語言的狀態(tài)欄的輸出框中看到如下提示:你可以看到輸出調(diào)試文本()語句就是在狀態(tài)欄的輸出框中進(jìn)行提示,當(dāng)前程序在做什么,你都可以通過輸出框觀察,從這里我們就可以看出在點(diǎn)擊“連接”之后,程序是一句一句執(zhí)行下來的,而不是直接得到最后結(jié)果的。你能再改變一下程序,假定在編輯框中我們輸入的都是數(shù)字,你能讓第三個(gè)編輯框輸出它們的和嗎?你還能輸出它們的和與它們的差的乘積嗎?提示:要注意數(shù)據(jù)類型之間的轉(zhuǎn)換。第八課猜數(shù)(選擇程序結(jié)構(gòu))上節(jié)課我們學(xué)習(xí)了順序程序結(jié)構(gòu),就是程序是從上往下一步一步執(zhí)行的,但有時(shí)我們也會(huì)碰到這樣一種情況,比如我們擲硬幣,則硬幣最后落在地上會(huì)
25、出現(xiàn)二種情況,可能是字朝上,也可能是花朝上,并且這二種情況是不會(huì)同時(shí)出現(xiàn)的,程序要根據(jù)硬幣的情況再執(zhí)行不同的程序代碼,也就是說,程序的代碼是由某個(gè)條件是否成立來選擇下面的代碼是否執(zhí)行,這種程序結(jié)構(gòu)稱為選擇程序結(jié)構(gòu)。我們可以看一下圖,圖中的箭頭表示程序的走向,從上往下走,在擲硬幣時(shí),程序就要判斷條件“字朝上”,如果條件成立就往下走,如果條件不成立就往右邊走。擲硬幣字朝上是否我們可以這樣表示:如果(條件成立)那么(往下)否則(往右)在易語言中是如下左圖所示的式樣來表示:上圖二種表示方式差別很大,在程序編寫過程中,根據(jù)使用環(huán)境的不同,要選擇不同的語句,如果用第二種表示方式,則在往下走之后程序會(huì)繼續(xù)往
26、右走,而用上左圖時(shí),則在往下走之后會(huì)跳過往右走的程序語句,所以同學(xué)們?cè)诰幊虝r(shí)要注意選擇。下面我們通過學(xué)習(xí)一個(gè)例程來體會(huì)一下選擇程序結(jié)構(gòu)。例:程序運(yùn)行后,計(jì)算機(jī)產(chǎn)生一個(gè)介于0到100之間的隨機(jī)數(shù),我們通過一個(gè)編輯框輸入一個(gè)數(shù),如果我們輸入的數(shù)字剛好可以被這個(gè)隨機(jī)數(shù)整除,則通過文字標(biāo)簽提示輸入“你贏了”,否則提示“你輸了”。跟我做:1新建一個(gè)“窗口程序”。2從控件箱中拖二個(gè)文字標(biāo)簽、2個(gè)按鈕和一個(gè)編輯框,設(shè)置各組件的位置與屬性,最終效果如圖:其中為了突出提示效果,我們可以為文字標(biāo)簽2的屬性設(shè)置字體為隸書,大小為28,字體顏色為紅色,這樣當(dāng)程序運(yùn)行中進(jìn)行提示時(shí)就會(huì)比較醒目。3我們要讓程序運(yùn)行時(shí)先置一
27、個(gè)隨機(jī)數(shù),這個(gè)隨機(jī)數(shù)的大小介于0到100之間。選擇“_啟動(dòng)窗口”,你可以在設(shè)計(jì)窗口中單擊藍(lán)色的標(biāo)題欄,也可以在工作夾的屬性項(xiàng)中選擇。然后在屬性選項(xiàng)中選擇“創(chuàng)建完畢”事件,即當(dāng)程序窗口創(chuàng)建后,我們就讓程序取一個(gè)隨機(jī)數(shù),程序代碼如下:置隨機(jī)數(shù)種子 ()變量1 取隨機(jī)數(shù) (0, 100)在增加變量1這個(gè)新變量時(shí),我們可以選擇為程序集變量,也可以為全局變量,但不能設(shè)置為局部變量,如果設(shè)置為局部變量,則在其它子程序中不能使用該變量。4為“我猜”按鈕添加“被單擊”事件,最終程序代碼如下:注意,這里要選擇用如果(),把如果()改成如果真()的話,這個(gè)程序就會(huì)達(dá)不到我們的要求,同學(xué)們有興趣可以試一下用如果真(
28、)來做這個(gè)程序,可能會(huì)比你想像中的要復(fù)雜得多哦!當(dāng)然我們并沒有說用如果真()不可以做,只是用如果()程序會(huì)更簡(jiǎn)單而已。5運(yùn)行程序,查看程序運(yùn)行的效果,以及輸入不同的數(shù)的提示是否不一樣。提示:如果在編輯框中不輸入數(shù)而直接按“我猜”按鈕會(huì)出錯(cuò),因?yàn)椴惠斎霐?shù)就相當(dāng)于0,而0是不能作被除數(shù)的??赡苡行┩瑢W(xué)在做的時(shí)候想到了,如果我們輸入1,則程序始終提示“我贏了”,你能改進(jìn)一下程序,避免出現(xiàn)這個(gè)漏洞嗎?上面的例子只用到了一個(gè)條件語句,但有些我們會(huì)碰到這樣的程序,要判斷的條件比較多,要出給的結(jié)果也比較多,這時(shí)我們就要用到塊結(jié)構(gòu)的條件語句,即有一組條件語句組成,它的結(jié)構(gòu)如下所示:當(dāng)然還有其它多種組合方式,比
29、如如果真()與如果()混合使用的方式,這要看程序要求而定,不能一概而論。例:程序運(yùn)行后,計(jì)算機(jī)產(chǎn)生一個(gè)介于0到100之間的隨機(jī)數(shù),我們通過一個(gè)編輯框來猜這個(gè)隨機(jī)數(shù),如果輸入的數(shù)大于計(jì)算機(jī)產(chǎn)生的隨機(jī)數(shù),則通過文字標(biāo)簽提示輸入的數(shù)太大,如果輸入的數(shù)小于計(jì)算機(jī)產(chǎn)生的隨機(jī)數(shù),則提示輸入的數(shù)太小,如果輸入的數(shù)剛好就是計(jì)算機(jī)產(chǎn)生的隨機(jī)數(shù),則提示你贏了。跟我做:1新建一個(gè)“窗口程序”。2從控件箱中拖二個(gè)文字標(biāo)簽、2個(gè)按鈕和一個(gè)編輯框,設(shè)置各組件的位置與屬性,最終效果如圖:其中為了突出提示效果,我們可以為文字標(biāo)簽2的屬性設(shè)置字體為隸書,大小為28,字體顏色為紅色,這樣當(dāng)程序運(yùn)行中進(jìn)行提示時(shí)就會(huì)比較醒目。3我們
30、要讓程序運(yùn)行時(shí)先置一個(gè)隨機(jī)數(shù),這個(gè)隨機(jī)數(shù)的大小介于0到100之間。選擇“_啟動(dòng)窗口”,你可以在設(shè)計(jì)窗口中單擊藍(lán)色的標(biāo)題欄,也可以在工作夾的屬性項(xiàng)中選擇。然后在屬性選項(xiàng)中選擇“創(chuàng)建完畢”事件,即當(dāng)程序窗口創(chuàng)建后,我們就讓程序取一個(gè)隨機(jī)數(shù),程序代碼如下:置隨機(jī)數(shù)種子 ()變量1 取隨機(jī)數(shù) (0, 100)在增加變量1這個(gè)新變量時(shí),我們可以選擇為程序集變量,也可以為全局變量,但不能設(shè)置為局部變量,如果設(shè)置為局部變量,則在其它子程序中不能使用該變量。4為“我猜”按鈕添加“被單擊”事件,最后程序代碼如下圖:注意圖中如果真()前面的虛線箭頭指向,箭頭指向的是條件不成立時(shí)做什么,條件成立時(shí)就做虛線箭頭包圍的
31、那些語句。5運(yùn)行程序,查看程序運(yùn)行的效果。請(qǐng)你設(shè)計(jì)一個(gè)程序,讓計(jì)算機(jī)來猜一下你的年齡,你只要根據(jù)計(jì)算機(jī)的答案告訴它猜的大了還是小了,如果猜對(duì)了就結(jié)束程序。提示:這個(gè)程序的大小就你來判斷,程序的結(jié)構(gòu)可能有點(diǎn)不一樣,要仔細(xì)考慮哦!第九課多分支控制結(jié)構(gòu)語句上一節(jié)課我們學(xué)習(xí)了分支控制結(jié)構(gòu)語句,在這節(jié)課中,我們?cè)賮韺W(xué)習(xí)一種新的多分支控制結(jié)構(gòu)語句判斷(),判斷()語句和如果真()語句有點(diǎn)像,但又不同,我們來看下圖:我們可以從上圖中看出,判斷和如果真的程序走向是完全不同的,我們可以看到,如果條件一成立,則判斷()語句是跳過條件二這個(gè)語句的,而如果真()語句還要檢查條件二是否成立。那我們用如果()來代替如果真
32、(),看看效果是怎么樣的:從圖中程序的走向我們可以看出,判斷()語句和如果()語句的效果是一樣的,但如果有多個(gè)條件要判斷的話,則程序的結(jié)構(gòu)、可讀性二者相比就相差很多,我們可以通過下面一個(gè)例子來看一下。例:輸入一個(gè)百分制的成績(jī),要求輸出成績(jī)的等級(jí)A、B、C、D。90分以上為A,7889分為B,6077為C,60分以下為D。跟我做:1新建一個(gè)“窗口程序”。2從控件箱中拖二個(gè)文字標(biāo)簽、一個(gè)編輯框和一個(gè)按鈕,設(shè)置好各自的屬性,請(qǐng)調(diào)整好大小布局。3為“轉(zhuǎn)換”按鈕添加“被單擊”事件,如下圖所示:4運(yùn)行程序,輸入各檔大小的分?jǐn)?shù),測(cè)試程序運(yùn)行是否正確。請(qǐng)你把這個(gè)例子用如果()或如果真()語句來完成,然后比較一
33、下用如果真()、如果()語句與用判斷()語句那個(gè)可讀性更強(qiáng)。如果把題目改成:輸入一個(gè)百分制的成績(jī),要求輸出成績(jī)的等級(jí)A、B、C、D、E。90分以上為A,8089分為B,7079為C,6069分為D,60分以下為E。然后用如果()語句和判斷()語句各做一遍,看看這時(shí)的效果如何?第十課練習(xí)一、選擇題:1某程序中按鈕的“被單擊”事件程序代碼如下:則當(dāng)該程序運(yùn)行時(shí),標(biāo)簽1上顯示的結(jié)果是:(A)1 2(B)1 3(C)1 1(D)3 12某程序中按鈕的“被單擊”事件程序代碼如下:則當(dāng)該程序運(yùn)行時(shí),標(biāo)簽1上顯示的結(jié)果是:(A)3 3(B)5 8(C)3 3(D)25 25二、編程題:1編寫一個(gè)程序,輸入一
34、個(gè)整數(shù),判斷能否被3或5整除,如能整除就輸出該該數(shù),否則不輸出。2輸入一年年份,判斷它是否為閏年。閏年的條件是:年號(hào)能被4整除但不能被100整除,或者能被400整除的年份。3輸入3個(gè)數(shù),要求按大到小輸出。4輸入一個(gè)099999之間的整數(shù),判斷輸入的是幾位數(shù)。如:如果輸入486,則輸出結(jié)果為3。第十一課循環(huán)程序結(jié)構(gòu)前幾節(jié)課我們已經(jīng)學(xué)習(xí)了順序程序結(jié)構(gòu)和選擇程序結(jié)構(gòu),從這節(jié)課開始我們就要學(xué)習(xí)第3種程序結(jié)構(gòu):循環(huán)程序結(jié)構(gòu)。在我們解決實(shí)際問題時(shí),經(jīng)常遇到對(duì)某一段程序進(jìn)行重復(fù)執(zhí)行的結(jié)構(gòu),這種被重復(fù)執(zhí)行的程序結(jié)構(gòu)叫循環(huán)程序結(jié)構(gòu),被重復(fù)執(zhí)行的程序段稱為循環(huán)體。當(dāng)然,重復(fù)一般是有條件的,即在滿足一定條件下才執(zhí)行
35、循環(huán)體(有條件地進(jìn)入循環(huán)),或者滿足一定條件就不再循環(huán)(有條件地退出循環(huán))。循環(huán)控制結(jié)構(gòu)的功能就是決定在什么條件下進(jìn)入或退出循環(huán)。易語言中共有以下四種循環(huán):在不知道循環(huán)需要執(zhí)行多少次時(shí),可以用判斷循環(huán)或循環(huán)判斷,在知道循環(huán)要執(zhí)行多少次時(shí),則一般建議最好用計(jì)次循環(huán)或變量。下面我們分別以例程來分析各種循環(huán)結(jié)構(gòu)。例:求12399100的總和。分析:在這個(gè)程序中,我們要用一個(gè)變量“總和”來放累加和,還要用一個(gè)變量“循環(huán)變量”來表示當(dāng)前的加數(shù),因?yàn)槭菑?加到100,則“循環(huán)變量”的初始值應(yīng)該為1,每循環(huán)一次就把“循環(huán)變量”的值加到“總和”上去,然后“循環(huán)變量”的值加1,一直到循環(huán)變量的值為100時(shí)程序結(jié)
36、束。程序代碼如下:這個(gè)程序比較簡(jiǎn)單,如果我們要看這個(gè)程序執(zhí)行的結(jié)果是否正確,只要在判斷循環(huán)尾()下面加一句:輸出調(diào)試文本(到文本(總和),然后在狀態(tài)欄的輸出框中可以看到結(jié)果,如果輸出為5050,則程序執(zhí)行正確。例:求兩個(gè)正整數(shù)的最大公約數(shù)。分析:整數(shù)1、整數(shù)2的最大公約數(shù)就是所有能同時(shí)除盡整數(shù)1、整數(shù)2的數(shù)中最大的數(shù)。比如6、9,能夠被6、9同時(shí)除盡的數(shù)有1、3,則最大公約數(shù)為3。求兩個(gè)正整數(shù)的最大公約數(shù)的最常用的方法是輾轉(zhuǎn)相除法。假定整數(shù)1等于6,整數(shù)2等于9,求整數(shù)1、整數(shù)2的最大公約數(shù)可以這樣做:我們用一個(gè)“臨時(shí)變量”有暫存整數(shù)1、整數(shù)2相除的余數(shù),這時(shí)臨時(shí)變量等于6除以9的余數(shù),即為6
37、;把整數(shù)2的值給整數(shù)1,把剛才得到的余數(shù)給整數(shù)2,則這時(shí)整數(shù)1等于9,整數(shù)2等于6;回到第步,直到余數(shù)為0。當(dāng)余數(shù)(即臨時(shí)變量)為0時(shí),最大公約數(shù)就是前一個(gè)余數(shù),也就是在第步中的整數(shù)2,因?yàn)橛鄶?shù)在變成0之前把它的值給了整數(shù)2。程序代碼如下:以上兩個(gè)例子都是用判斷循環(huán)結(jié)構(gòu),其中第2個(gè)例子是不知道需要執(zhí)行多少次的,所以必須要用判斷循環(huán),而第1個(gè)例子是知道循環(huán)需要執(zhí)行多少次的,我們一開始就講過,如果知道循環(huán)次數(shù),我們最好用計(jì)次循環(huán)或循環(huán)變量,現(xiàn)在我們來改一下程序:我們可以看到,用計(jì)次循環(huán)的結(jié)構(gòu)更加簡(jiǎn)單,因?yàn)橛糜?jì)次循環(huán)時(shí),加數(shù)會(huì)自動(dòng)加1的。如果把題目改成:求246100的和。請(qǐng)同學(xué)們用分別計(jì)次循環(huán)和判
38、斷循環(huán)編寫程序。接下來我們來看一下變量循環(huán),如右圖所示:變量循環(huán)有四個(gè)參數(shù):變量起始值,默認(rèn)為1,變量目標(biāo)值,循環(huán)變量的最終值,變量遞增值,每次循環(huán)時(shí)增加的值,循環(huán)變量,就是用來存放循環(huán)過程中的當(dāng)前值。這四個(gè)參數(shù)都可以用變量來表示,也可以用常量來表示前三個(gè)參數(shù)。變量循環(huán)首是用來設(shè)置循環(huán)條件及次數(shù)的,在一次循環(huán)結(jié)束后,循環(huán)變量會(huì)自動(dòng)加上設(shè)置的遞增值,直到循環(huán)變量的值大于設(shè)定的目標(biāo)值。如果在循環(huán)過程中要根據(jù)某一條件來決定是否繼續(xù)循環(huán),可以用跳出循環(huán)加條件判斷語句來控制。如果用變量循環(huán)來做上面的習(xí)題,則會(huì)很簡(jiǎn)單,程序如下:所以我們說每一種循環(huán)結(jié)構(gòu)都是各有所長(zhǎng)的,現(xiàn)在我們用變量循環(huán)來做一張九九乘法表。
39、這個(gè)程序看起來可能比較吃力,我們要仔細(xì)觀察,認(rèn)真思考,這里有二個(gè)循環(huán),每一個(gè)循環(huán)是如何執(zhí)行的。最終效果如下圖所示:到這里為止,我們已經(jīng)學(xué)習(xí)了易語言中的前三種循環(huán)結(jié)構(gòu),還有最后一種循環(huán)結(jié)構(gòu)就是循環(huán)判斷,這個(gè)結(jié)構(gòu)聽起來和判斷循環(huán)很像,但他們的流程是不一樣的,判斷循環(huán)是先判斷條件是否成立,然后再循環(huán),而循環(huán)判斷是不管條件先循環(huán),一次循環(huán)結(jié)束后再判斷條件,所以同學(xué)們?cè)谑褂脮r(shí)要注意不同的程序要求選擇用不同的結(jié)構(gòu)。在使用循環(huán)判斷結(jié)構(gòu)時(shí)要注意,如果最后的條件總是成立的話,則循環(huán)就會(huì)陷入“死循環(huán)”。如果遇到這種情況,最好能在循環(huán)中加一個(gè)條件跳出循環(huán)語句。例:在銀行中存款1000元,按年利率25%計(jì)算,一年后連
40、本帶利將變?yōu)?025元,如果將該款項(xiàng)繼續(xù)存入銀行,則多少年后會(huì)連本帶利翻一番?(不計(jì)利稅)分析:這個(gè)例題是利用復(fù)利公式:本息合計(jì)數(shù)×(1年利率)來計(jì)算最終的本息合計(jì)數(shù)的,其中公式中的本息合計(jì)數(shù)為前一年到期后的本息數(shù),計(jì)算的結(jié)果為本年的本息合計(jì)數(shù),反復(fù)利用這個(gè)公式計(jì)算,直到結(jié)果為原存款的2倍為止。在這個(gè)例子中,因?yàn)槲覀冎恢雷罱K結(jié)果要翻一番,所以我們?cè)跊]有達(dá)到這個(gè)目的前一直要存下去(也就是一直循環(huán)下去),要注意我們的條件是最終本息2×存款,而不是最終本息 2×存款,這一點(diǎn)一定要注意,請(qǐng)同學(xué)們思考一下,這里為什么用的是小于,而不是等于或大于。第十二課循環(huán)程序結(jié)構(gòu)練習(xí)一
41、、選擇題1下面程序運(yùn)行時(shí),當(dāng)單擊按鈕時(shí),輸出結(jié)果為:(A) 6(B) 10(C) 14(D) 212設(shè)有以下程序段:則該程序段運(yùn)行時(shí),語句“輸出內(nèi)容 變量1 × 變量2”的執(zhí)行次數(shù)為:(A) 15(B) 16(C) 17(D) 183下面程序執(zhí)行時(shí),當(dāng)在按鈕上單擊時(shí)輸出的結(jié)果是:(A) 3 1(B) 3 5(C) 8 6(D) 3 64下面程序執(zhí)行時(shí),當(dāng)在按鈕上單擊時(shí)的輸出結(jié)果是:(A) 8(B) 9(C) 10(D) 11二、編程題1編寫程序求:1!2!10!的值。2編寫程序求:1的值。3已知斐波那契數(shù)列的第1項(xiàng)與第2項(xiàng)的值分別為1和1,其后每一項(xiàng)都是其前面兩項(xiàng)的和,形如:1,1,
42、2,3,5,8,寫一程序求出該數(shù)列的前20項(xiàng)及前20項(xiàng)的和。第十三課菜單的設(shè)計(jì)在Windows環(huán)境中,我們?cè)诤芏啻翱诔绦蛑卸伎梢钥吹讲藛?,程序的很多功能都是通過菜單來實(shí)現(xiàn)的,而且菜單的不同功能往往被分成不同的幾個(gè)菜單項(xiàng),這樣做的目的是為了讓使用者更方便、更快捷。一、菜單的基本概念在實(shí)際應(yīng)用的程序中,通常有二種菜單,一種是彈出式菜單,另一種是下拉式菜單,我們先了解一下這二種菜單的基本特點(diǎn):1下拉式菜單下拉式菜單是一種典型的窗口式菜單,它一般通過單擊窗口菜單欄中的菜單標(biāo)題來打開,如:我們?cè)诖翱谥袉螕簟拔募?、“編輯”等菜單時(shí)就會(huì)顯示一個(gè)下拉菜單。在下拉式菜單中,一般有一個(gè)主菜單,即菜單欄(一般位于
43、窗口標(biāo)題欄的下方),其中包括一個(gè)或多個(gè)選擇項(xiàng),分別稱為菜單標(biāo)題或主菜單項(xiàng)。當(dāng)單擊一個(gè)菜單標(biāo)題時(shí),一個(gè)包含若干個(gè)菜單項(xiàng)的列表(即菜單)即被打開,這些菜單項(xiàng)可被稱為菜單命令或子菜單項(xiàng)。根據(jù)功能的不同,菜單命令多以分隔條隔開,有的菜單命令的右端具有三角符號(hào),當(dāng)鼠標(biāo)指針指向該菜單命令時(shí),會(huì)出現(xiàn)下級(jí)子菜單,在易語言中最多可以出現(xiàn)6級(jí)子菜單(菜8層);有的菜單命令的左邊具有“”,表示該菜單命令正起作用2彈出式菜單從上面的介紹可以得出,下拉式菜單是顯示在窗口的菜單欄上的,而彈出式菜單不同,它是當(dāng)用戶在一個(gè)對(duì)象上單擊右鍵時(shí)顯示出來的菜單,可以在窗口的某個(gè)位置顯示,因此,它能以更靈活的方式為用戶提供更方便和快捷
44、的操作。如,在設(shè)計(jì)階段,在窗體中單擊右鍵時(shí)顯示的菜單就是彈出式菜單。彈出式菜單有時(shí)也稱為“右鍵菜單”或“快捷菜單”。二、菜單編輯器的打開在易語言中,當(dāng)窗體設(shè)計(jì)器被打開,并且被設(shè)計(jì)的窗體為活動(dòng)窗體時(shí),我們可以通過以下3種方法打開菜單編輯器:方法1:?jiǎn)螕簟肮ぞ摺辈藛?,在下拉菜單中單擊“菜單編輯器”命令。方?:直接按下快捷鍵Ctrl+E。方法3:在要建立菜單的窗體上單擊鼠標(biāo)右鍵,在出現(xiàn)的快捷菜單中單擊“菜單編輯器”命令。三、設(shè)計(jì)下拉式菜單1設(shè)計(jì)下拉式菜單的方法利用菜單編輯器可以在窗體中建立下拉式菜單,基本的步驟: 新建一個(gè)窗體和設(shè)計(jì)用戶界面。 利用菜單編輯器設(shè)計(jì)各菜單項(xiàng)。 利用代碼編輯窗口編寫每個(gè)
45、個(gè)菜單項(xiàng)的事件程序。 運(yùn)行調(diào)試各菜單命令。下面我們通過例子來具體看一下下拉式菜單的設(shè)計(jì)。例:設(shè)計(jì)一個(gè)利用菜單控制文本框中文字的字體、字號(hào)和修飾的程序。要求:字體控制可設(shè)置為宋體、楷體、隸書3種。字號(hào)控制可設(shè)置成16、24、32三種。文字修飾可設(shè)置成常規(guī)、加粗、傾斜和加下劃線4種。跟我做: 新建一個(gè)“Windows窗口程序”。 拖放一個(gè)編輯框到設(shè)計(jì)窗口,調(diào)整大小、位置,并設(shè)置編輯框的內(nèi)容初始值為“易語言菜單初級(jí)應(yīng)用”。 利用菜單編輯器,設(shè)計(jì)一個(gè)菜單,如下圖:注意:有些心細(xì)的同學(xué)可能已經(jīng)發(fā)現(xiàn),在32點(diǎn)大小的菜單中,名稱不是“32點(diǎn)”,而是“z32點(diǎn)”,這其實(shí)主要是因?yàn)樵谝渍Z言中,菜單名稱的第一個(gè)字
46、符不能為數(shù)字或空格,所以我們就要在數(shù)字或空格之前加一個(gè)字母之類,在16點(diǎn)、24點(diǎn)二個(gè)菜單中也是這樣的。最后設(shè)計(jì)窗口的效果如圖所示: 現(xiàn)在我們就要為各菜單命令加上事件處理程序。我們先來看一下字體菜單中宋體這一菜單命令的事件處理程序。在設(shè)計(jì)窗口中單擊“字體”,在彈出的菜單中單擊“宋體”,就會(huì)自動(dòng)打開程序設(shè)計(jì)窗口,輸入相應(yīng)程序代碼,最終如下:依次點(diǎn)擊各菜單項(xiàng),為各菜單命令加上事件處理程序:編輯框1.字體.字體名稱 “楷體_GB2312”字體設(shè)為“楷體”編輯框1.字體.字體名稱 “隸書”字體設(shè)為“隸書”編輯框1.字體.加粗 假修飾設(shè)為“正常”編輯框1.字體.傾斜 假編輯框1.字體.下劃線 假編輯框1.
47、字體.加粗 真修飾設(shè)為“加粗”編輯框1.字體.傾斜 真修飾設(shè)為“傾斜”編輯框1.字體.下劃線 真修飾設(shè)為“加下劃線”編輯框1.字體.字體大小 16大小設(shè)為“16點(diǎn)”編輯框1.字體.字體大小 24大小設(shè)為“24點(diǎn)”編輯框1.字體.字體大小 32大小設(shè)為“32點(diǎn)”運(yùn)行程序,測(cè)試結(jié)果是否正確。2菜單項(xiàng)狀態(tài)的控制菜單有效性的控制我們?cè)赪indows中常常可以看到有些菜單是灰色的,不可用的,有些菜單是黑色的,可用的。這其實(shí)是程序根據(jù)當(dāng)前運(yùn)行情況,將相應(yīng)的菜單設(shè)置為可用或不可用。例:在上一例子中,如果編輯框中沒有內(nèi)容,則所以菜單項(xiàng)都不可用,如果有內(nèi)容,則菜單項(xiàng)可用。在這里,因?yàn)槲覀円呀?jīng)對(duì)編輯框設(shè)置了一個(gè)初
48、始值,所以我們只要判斷一下編輯框中是否有內(nèi)容,根據(jù)這個(gè)判斷來設(shè)置菜單是否禁止使用即可。如下圖:在這里我們只設(shè)置了部分菜單,同學(xué)們可以根據(jù)上圖完成。如果編輯框一開始沒有初始值,那么請(qǐng)同學(xué)們想一下,這個(gè)程序該如何設(shè)計(jì)才能達(dá)到我們的要求?運(yùn)行程序后,把編輯框中的內(nèi)容刪除,看一下菜單項(xiàng)是否可用?再輸入一些內(nèi)容,看一下菜單項(xiàng)是否可用。菜單項(xiàng)標(biāo)記的控制所謂菜單項(xiàng)標(biāo)記,就是在某個(gè)菜單項(xiàng)的左邊加一個(gè)“”。它有兩個(gè)作用:一是可以明顯地表示當(dāng)前某個(gè)(或某些)菜單命令的狀態(tài)是打開或關(guān)閉的;二是可以表示當(dāng)前已選擇的是哪個(gè)菜單項(xiàng)。這可以在程序代碼中通過設(shè)置菜單項(xiàng)“選中”屬性值來完成。例:在上面的例子中的“字體”菜單項(xiàng)中
49、,當(dāng)一個(gè)字體選中時(shí),就在該字體菜單前加上“”,在其它字體菜單是不加“”。我們這里以“宋體”選擇為例:這里要注意一點(diǎn),就是在為“宋體”菜單項(xiàng)加“”時(shí),要記得把“楷體”、“隸書”前的“”清除。3設(shè)計(jì)彈出式菜單建立彈出式菜單的方法: 利用菜單編輯器建立菜單,把主菜單的可視選項(xiàng)框取消。 利用彈出菜單函數(shù)顯示彈出式菜單。彈出菜單的調(diào)用格式:對(duì)象彈出菜單 (菜單 欲彈出的菜單,整數(shù)型 水平顯示位置,整數(shù)型 垂直顯示位置)其中:l 對(duì)象可以省略,省略時(shí)表示當(dāng)前選擇的對(duì)象。l 第一個(gè)參數(shù)“菜單”就是在菜單編輯器中建立的菜單的主菜單的名稱。l 水平顯示位置、垂直顯示位置表示彈出式菜單顯示時(shí)的橫、縱坐標(biāo)位置,如果
50、不指定,則在鼠標(biāo)指針位置顯示。例:設(shè)計(jì)一個(gè)彈出式菜單,當(dāng)鼠標(biāo)在編輯框中單擊右鍵時(shí),顯示字體菜單,用來設(shè)置編輯框內(nèi)容的字體。跟我做:新建一個(gè)“窗口程序”。從控件箱中拖一個(gè)編輯框,調(diào)整好大小、位置。用菜單編輯器建立一個(gè)菜單,如下圖所示,注意把“字體”的可視選項(xiàng)取消,即設(shè)置為不可見。選擇編輯框,在屬性欄中選擇“鼠標(biāo)右鍵被按下”事件,輸入程序:彈出菜單 (字體, , )對(duì)字體菜單中的各字體事件進(jìn)行相應(yīng)處理,同上面的例程。運(yùn)行程序,測(cè)試結(jié)果是否正確。請(qǐng)你在本課第一個(gè)例程的基礎(chǔ)上,增加一個(gè)包含有“紅色”、“綠色”、“藍(lán)色”的顏色主菜單。并設(shè)計(jì)它們的事件程序,當(dāng)單擊其中一個(gè)菜單命令時(shí),程序能改變文本框中文字的顏色。第十四課對(duì)話框在設(shè)計(jì)Windows窗口程序的過程中,使用者與程序之間的人機(jī)交互,如:數(shù)據(jù)的輸入和接收、系統(tǒng)信息的反饋等都是以窗口的形式提供的,這種窗口就是對(duì)話框。在易語言中,按對(duì)話框建立方式的不同,可將對(duì)話框分為3種類型,即:預(yù)定義對(duì)話框、通用對(duì)話框和自定義對(duì)話框,它們可以通過以下方法分別建立: 利用信息框函數(shù)建立提示類對(duì)話框。 使用易語言提供的通用對(duì)話框控件來創(chuàng)建,如:打開文件、保存文件、字體設(shè)置等。 使用窗體和標(biāo)準(zhǔn)控件根據(jù)需要進(jìn)行設(shè)計(jì)完成,這種對(duì)話框稱為自定義對(duì)話框或定制對(duì)話框。按對(duì)話
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園創(chuàng)新思維訓(xùn)練計(jì)劃
- 積木與拼圖促進(jìn)邏輯思維發(fā)展的策略計(jì)劃
- 企業(yè)社會(huì)責(zé)任管理培訓(xùn)
- 儲(chǔ)物柜租賃合同三篇
- 滑板行業(yè)推廣滑板運(yùn)動(dòng)文化計(jì)劃
- 生物教育成果評(píng)估與分析計(jì)劃
- 腸內(nèi)營(yíng)養(yǎng)健康宣教
- 普工安全風(fēng)險(xiǎn)告知書(危險(xiǎn)源告知書)
- 騎電動(dòng)車撞人賠償后的協(xié)議書范文
- 出售二手拖拉機(jī)協(xié)議書范文范本
- 著名品牌設(shè)計(jì)案例分析
- 2024年社區(qū)工作者考試必考1000題及答案(真題匯編)
- 醫(yī)院培訓(xùn)課件:《危急值報(bào)告管理制度》
- 手術(shù)室護(hù)士與手術(shù)醫(yī)生的配合
- 宣講《鑄牢中華民族共同體意識(shí)》全文課件
- 《單片機(jī)技術(shù)應(yīng)用》課程標(biāo)準(zhǔn)
- (正式版)JCT 2769-2024 混凝土用鐵尾礦碎石
- 史鐵生好運(yùn)設(shè)計(jì)理解
- 國(guó)開2024年《鋼結(jié)構(gòu)(本)》階段性學(xué)習(xí)測(cè)驗(yàn)1-4答案
- XX汽車加油站新建項(xiàng)目可行性研究報(bào)告
- 2024年全國(guó)工商聯(lián)直屬單位招考聘用筆試歷年高頻考點(diǎn)題庫(kù)薈萃帶答案解析
評(píng)論
0/150
提交評(píng)論