校本課程--VB入門_第1頁
校本課程--VB入門_第2頁
校本課程--VB入門_第3頁
校本課程--VB入門_第4頁
校本課程--VB入門_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、校本課程綱要主講:李忠華一、校本課程:vb面向?qū)ο蟮某绦蛟O(shè)計教學(xué)材料:創(chuàng)編課程類型:講授型、實驗探究型、活動交流型。授課時間:一學(xué)年。授課對象:高一年級中程序設(shè)計的愛好者。二、校本課程的具體內(nèi)容:知識與技能:認(rèn)識vb對象的屬性與方法,理解事件、事件過程和事件驅(qū)動的概念,了解vb的可視化編程。過程與方法:熟悉vb界面,制作簡單的程序界面,能夠通過屬性窗口更改對象屬性,認(rèn)識事件和事件過程的概念并制作出一個小程序。情感態(tài)度與價值觀:通過實踐演示并由學(xué)生自己動手操作編輯簡單實用小程序,引發(fā)學(xué)生學(xué)習(xí)計算機程序的興趣,從而形成積極主動學(xué)習(xí)使用計算機解決問題的習(xí)慣。校本課程目錄:第一課:我的第一個vb程序第

2、二課 編寫程序代碼第三課:認(rèn)識各國國旗第四課:做個簡單的文本編輯器第五課:“你猜對了嗎?”-分支結(jié)構(gòu)的程序設(shè)計第六課:讓飛機飛起來-循環(huán)結(jié)構(gòu)的程序設(shè)計第七課:編譯軟件三、校本課程實施方法和形式:實施方法:教案講授,學(xué)生討論分析綜合實踐。實施形式:教師設(shè)計、組織主持,學(xué)生設(shè)計、集體實踐四、校本課程教學(xué)評價:部分學(xué)生評價:vb程序設(shè)計是一個比較抽象的概念,不易理解,但在老師的舉一反三的例證和深入淺出的講解之下,能最大層度的激發(fā)我們的興趣,調(diào)動我們學(xué)習(xí)參與的積極性。在整個課程中,我們不但能了解了vb的一些最基本的功能,也能簡單的編輯一些實用的小程序。我想,這也為我們以后進一步的學(xué)習(xí)打下良好的基礎(chǔ)。教

3、師教學(xué)自我評價:本校本課程是vb面向?qū)ο蟮某绦虿糠?,根?jù)我校學(xué)生的自身特點,在教材自身的知識基礎(chǔ)上加入了一些常規(guī)對話框的制作,如自然數(shù)相加自然數(shù)的制作,文本框的設(shè)計等等,充實了教材的內(nèi)容,滿足了學(xué)生的求知欲和好奇心,學(xué)生基本能全程參與,積極動手。經(jīng)過一學(xué)年的學(xué)習(xí),學(xué)生基本能了解的程序設(shè)計的對象的概念,設(shè)計并制作一些簡單的實用的對象,如仿制操作系統(tǒng)中的文本框,制作文件的保存對話框等等,基本達(dá)到了開設(shè)這門課的目的。第一課:我的第一個vb程序用vb來編程序并不是一件難事,不信?請往下看。編寫一個程序,運行時顯示如下界面:圖3-1.1 簡單的vb程序操作步驟如下: 一、新建一個工程 步驟1:啟動vb5

4、。單擊【開始】【程序】【microsoft visual basic 5.0】【visual basic 5.0】。步驟2:在新建工程對話框(圖3-2.2)中選擇【標(biāo)準(zhǔn)exe】。visual basic把設(shè)計程序比作興建工程。因此,啟動vb5時首先要新建一個工程或打開一個工程文件。創(chuàng)建一個新的工程時,visual basic將自動創(chuàng)建一個空窗體,并命名為“form1”。窗體是程序運行的窗口。圖3-1.3 vb的工作窗口二、在窗體中新建對象 控件和對象 在vb的窗口中有一個工具箱(一般在左邊),工具箱中有很多“工具”,稱為控件。單擊工具箱中的控件,然后在窗體中拖放鼠標(biāo),就可以在窗體中繪制具體的控

5、件,這些具體的控件就稱為對象。圖3-1.4 vb工具箱步驟3:單擊工具箱中的label(標(biāo)簽)控件,然后在窗體中拖放鼠標(biāo),窗體中就生成了一個新的對象,對象名為label1。如圖3-1.5。三、修改對象的屬性 步驟4:選中窗體中的一個對象,屬性窗口就會顯示出這個對象的所有屬性,如圖3-1.6所示。屬性 屬性就是對象的特征。每個對象都有很多屬性。屬性的設(shè)定有兩種方法:方法一:在屬性窗口中修改屬性值;操作方法如圖3-1.6所示。方法二:通過控制代碼來修改屬性值,它的格式為:對象名.屬性名=屬性值。比如,將對象label1的caption屬性修改為“我的第一個vb程序”:label1.caption=

6、”我的第一個vb程序”name(名稱)屬性 name屬性用于識別窗體、控件等對象。當(dāng)在窗體中添加一個對象時,其name屬性的默認(rèn)值為該對象類別名加上一個數(shù)值。例如:剛才添加的label控件的name屬性值為label1,如果在窗體中再加一個label,則被自動命名為label2,依次類推?!驹囈辉嚒吭诖绑w中添加一個對象label2,然后選定改對象,按鍵把它刪除。caption屬性窗體的caption屬性可以指定標(biāo)題欄中的文字內(nèi)容,對于控件則指定標(biāo)題或顯示的文字。當(dāng)選定了一個控件后,屬性窗口就會顯示該控件的屬性,如果沒有選中控件,那么屬性窗口中將顯示窗體的屬性。步驟5:選中l(wèi)abel1控件,然后

7、在屬性窗口中選擇caption屬性,把“l(fā)abel1”改為“我的第一個vb程序!”(如圖3-1.6);選中窗體form1,然后選擇caption屬性,將它改為“vb歡迎您”四、運行程序 步驟6:點擊工具欄上的運行按鈕,運行程序。圖3-1.7 運行結(jié)果這就是我們制作的第一個vb程序。五、保存程序 步驟7:單擊【文件】【保存工程】保存程序。這時出現(xiàn)“文件另存為”對話框(圖3-1.8)。步驟8:保存窗體。選擇文件夾、輸入文件名,然后單擊【保存】。此時保存的是form(窗體)文檔,系統(tǒng)默認(rèn)的擴展名為“.frm”。接下來出現(xiàn)“工程另存為”對話框(圖3-2.11)。步驟9:保存工程。選擇文件夾、輸入文件名

8、,然后單擊【保存】。此時保存的是工程文檔,系統(tǒng)默認(rèn)的擴展名為“.vbp”。vb與前面所用的軟件不一樣,vb程序同時打開了兩個保存對話框,一個是用來保存form文檔,一個是用來保存工程文檔(如圖3-1.10所示)。同一個工程里可以有多個form文檔?!驹囈辉嚒扛鶕?jù)自己的喜好,利用label控件做一個vb程序。六、美化程序界面 修改控件的下列屬性,可以使程序界面美觀起來。backcolor、forecolor屬性 backcolor用來設(shè)定控件的背景顏色,forecolor則用來設(shè)定控件中的文字或圖形的顏色。通過這兩個屬性可以改變背景和文字的顏色。如圖3-1.11,通過調(diào)色板把字體的顏色改為紅色。

9、圖3-1.11 調(diào)色板font屬性 font屬性包括了字體、字形、大小等特征,與word的字體屬性對話框類似。圖3-1.12 字體對話框autosize屬性 當(dāng)文字變大時,經(jīng)常會發(fā)現(xiàn)label1的寬度不夠。如果將autosize屬性設(shè)置為ture,那么控件就會隨文字大小的變化而自動變化,始終能夠顯示文字內(nèi)容。修改label控件的font、autosize、backcolor、forecolor等屬性后,再一次運行程序,感覺就好看些了(如圖3-1.1)。至此,第一個vb程序就基本做好了。閱讀材料一:label控件及常用屬性表label標(biāo)簽控件,用于顯示文本。下表是它的常用屬性:屬性說明autos

10、ize控制對象自動調(diào)整大小以適應(yīng)所包含的內(nèi)容backcolor設(shè)置背景顏色backstyle設(shè)置邊框類型caption設(shè)置標(biāo)題enabled設(shè)置對象是否可用font設(shè)置或返回字體名稱forecolor設(shè)置前景顏色height設(shè)置對象的高left設(shè)置對象到窗體左邊界的距離name對象名稱top設(shè)置對象到窗體頂部邊界的距離width設(shè)置對象的寬度閱讀材料二: 在vb工作窗口中,有不少懸浮式的窗口,如果把這些懸浮窗口關(guān)閉了,可以利用“視圖”菜單將它們重新打開,如圖3-1.13 所示。圖3-1.13 視圖菜單第二課 編寫程序代碼 上一節(jié)課,我們通過修改對象的屬性做出了一個簡單的程序。不過,要設(shè)計出復(fù)雜

11、一點的程序,還得學(xué)習(xí)程序設(shè)計的語言。一、事件過程 事件 所謂事件,就是在程序的運行過程中發(fā)生的事情。比如鼠標(biāo)單擊、雙擊、移動,鍵盤按鍵等都是事件。當(dāng)我們單擊某個按鈕對象時,就會激發(fā)該按鈕對象的鼠標(biāo)單擊事件。visual basic應(yīng)用程序采用事件驅(qū)動的方式來運行。也就是說,只有在事件發(fā)生時,程序才會運行,沒有事情發(fā)生,程序就處于停滯狀態(tài)。在程序運行過程中發(fā)生的事件,有些是人為操作激發(fā)的,有些是系統(tǒng)激發(fā)的。事件過程 在程序的運行過程中,當(dāng)發(fā)生某一事件時,相應(yīng)的對象就會對該事件產(chǎn)生響應(yīng),去執(zhí)行一段程序代碼,這段程序代碼就稱為事件過程。vb程序可以監(jiān)測程序運行過程中所發(fā)生的事件。然后根據(jù)所發(fā)生的事件

12、執(zhí)行相應(yīng)的事件過程。用鼠標(biāo)雙擊窗體或窗體中的某個對象,會打開該對象的事件過程窗口(即程序代碼窗口),如圖3-2.1所示。圖3-2.1 程序代碼窗口常見的事件有:click(單擊鼠標(biāo))、dblclick(雙擊鼠標(biāo))、keypress(鍵盤按鍵)、change(內(nèi)容改變)下面來做一個響應(yīng)鼠標(biāo)操作的程序。例一:如圖3-2.2所示,單擊或雙擊圖中的第二行文字,那么第一、二行文字的內(nèi)容就會改變。 圖3-2.2 程序界面操作步驟如下: 步驟一:新建一個工程。vb會自動新建一個名為form1的窗體。步驟二:在from1里新建一個label對象,它默認(rèn)的名稱為label1。在屬性窗口中把它的caption屬性

13、改為“請單擊這個地方!”,并修改文字的顏色與字號。步驟三:在from1里再新建一個label對象,它默認(rèn)的名稱為label2。把它的caption屬性改為“這是label1內(nèi)容改變前!”,修改文字的顏色與字號?,F(xiàn)在我們就可以編寫程序代碼了。步驟四:雙擊label1控件,系統(tǒng)彈出程序代碼窗口,在事件過程選項中選擇“click”事件, 然后在事件過程里輸入程序代碼,如圖3-2.3所示。事件過程有一個固定的格式:private sub 控件_事件()(我們可以在這中間寫程序代碼)end sub步驟五:依次編寫如下兩個事件過程:對label1對象的dblclick(鼠標(biāo)雙擊)事件編寫程序代碼:labe

14、l1.caption = 這是雙擊鼠標(biāo)左鍵!對label1對象的change(內(nèi)容改變)事件編寫程序代碼: label2.caption=label1的內(nèi)容改變了!這是完整的代碼窗口內(nèi)容:圖3-2.4 完整的代碼窗口步驟6:單擊運行按鈕,運行程序。步驟7:點擊“保存”,把程序保存下來。例二:給第一課中的程序做一個按鈕。 操作步驟: 一、打開工程文檔 步驟1:打開第一課中制作的程序first.vbp,如圖3-2.5所示。步驟2:工程資源管理器中,雙擊“窗體”中form的名稱,打開第一課中制作的form,如圖3-2.6所示。圖3-2.6 工程資源管理器步驟3:在窗體中添加一個按鈕控件(comman

15、dbutton),把按鈕的caption屬性改為“結(jié)束”,字號改為“小四”。如圖3-2.7。圖3-2.7 做個結(jié)束按鈕步驟4:雙擊按鈕控件,在代碼窗口中輸入“end”,如圖3-2.8:圖3-2.8 按鈕的代碼窗口 代碼“end”是結(jié)束程序運行的意思。步驟5:運行程序。單擊結(jié)束按鈕,程序結(jié)束運行。步驟6:保存程序。【小技巧】 如果事件過程中引用了不存在的對象,當(dāng)程序運行時會顯示錯誤信息。如圖3-2.9所示。圖3-2.9 程序出錯信息練習(xí)1、做一個vb程序。要求:(1)程序界面如圖3-2.10左圖所示。(2)單擊按鈕時,程序運行畫面如圖3-2.10右圖所示。(3)點擊退出按鈕時退出程序。圖3-2.

16、10 練習(xí)示例閱讀材料一:幾個常見的事件:事件名稱功能change當(dāng)改變文本框的text屬性值時產(chǎn)生change事件click當(dāng)用戶在某個對象上單擊鼠標(biāo)左鍵時產(chǎn)生的事件dblclick當(dāng)用戶在某個對象上雙擊鼠標(biāo)左鍵時產(chǎn)生的事件keypress當(dāng)用戶在鍵盤上敲擊某個鍵時產(chǎn)生的事件resize窗口尺寸發(fā)生變化時自動觸發(fā)resize事件timer在計時器中用interval屬性所規(guī)定的時間段到達(dá)時產(chǎn)生的事件閱讀材料二:commandbutton控件及常用屬性commandbutton命令按鈕控件,選擇按鈕即可執(zhí)行相應(yīng)的操作。其常用屬性如下表:屬性說明backcolor設(shè)置背景顏色caption設(shè)置標(biāo)

17、題enabled設(shè)置對象是否可用font設(shè)置或返回字體名稱forecolor設(shè)置前景顏色height設(shè)置對象的高left設(shè)置對象到窗體左邊界的距離name對象名稱top設(shè)置對象到窗體頂部邊界的距離width設(shè)置對象的寬度第三課:認(rèn)識各國國旗 這一課,我們要編寫一個簡單的程序,教人認(rèn)識各國國旗。首先來學(xué)習(xí)vb中的幾個重要屬性:一、left、top屬性left屬性值用來指定對象左邊到窗體左邊邊緣的距離;而top屬性值指定控件上方到對象上方邊緣的距離。如圖3-3.1所示。圖3-3.1 left、top屬性二、height、width屬性height屬性值用來指定對象的高度,width屬性值用來指定對

18、象的寬度。這個兩屬性的值確定了一個對象的大小(如圖3-3.2)。圖3-3.2 height、width屬性三、picture屬性picture屬性用于設(shè)置要顯示的圖片文件。picture屬性設(shè)置的三種方法:方法一:在屬性窗口中進行設(shè)置。點擊picture屬性中的,在 “加載圖片”對話框中選擇要加載的圖片文件,如圖3-3.3所示。圖3-3.3 加載圖片方法二:程序運行時通過loadpicture來設(shè)置,所用的語句是:picture=loadpicture(文件路徑與名稱)如果loadpicture()中不指明文件的路徑與名稱,將消除窗體或控件中的圖片。方法三:通過剪貼板進行粘貼。先把需要使用的圖

19、片復(fù)制,然后粘貼到控件或窗體中?!驹囈辉嚒拷o窗體form1添加一個背景。如圖3-3.4所示。圖3-3.4 加了背景的窗體例一:設(shè)計一個界面如圖3-3.5所示的程序,當(dāng)單擊窗體左邊的國家名時,右邊就會顯示這個國家的國旗。 操作步驟: 步驟1:新建一個窗體,給窗體添加一個背景,如圖3-3.4所示。步驟2:在窗體中添加一個picturebox控件,用于顯示國旗。步驟3:在窗體中添加七個optionbutton控件,形成一組單選按鈕,用于選擇國家。7個optionbutton的名稱分別為option1、option2option7。optionbutton(選項按鈕)最常用的兩個屬性為:caption

20、和value,其中caption是用于顯示選項的提示內(nèi)容。value是用于設(shè)置選項按鈕的狀態(tài),即選中(true)與沒有選中(false),而系統(tǒng)默認(rèn)為false。當(dāng)單擊某個optionbutton時,它的value屬性值變?yōu)閠rue,而其它optionbutton的value屬性值變?yōu)閒alse。步驟4:編寫代碼。對7個optionbutton控件的click事件,分別編寫如圖3-3.6所示代碼:圖3-3.6 認(rèn)識國旗代碼步驟5:運行程序。步驟6:保存程序。例二:設(shè)計一個如圖3-3.7所示的圖片瀏覽器。 圖3-3.7 圖片瀏覽器例一設(shè)計的小程序只能看到程序里固定的圖片,本例設(shè)計的圖片瀏覽器可以

21、看到磁盤上的任意圖片(windows可以識別的)。操作步驟如下: 步驟1:新建一個窗體;步驟2:在窗體上新建一個驅(qū)動器列表框(drivelistbox)對象driver1;步驟3:在窗體中新建一個目錄列表框(dirlistbox)對象dir1;步驟4:在窗體中新建一個文件列表框(filelistbox) 對象file1;步驟5:在窗體中新建一個圖像框(image) 對象image1;步驟6:編寫程序代碼,如圖3-3.8所示;圖3-3.8 圖片瀏覽器代碼當(dāng)程序運行時,我們可以通過三個列表框找到圖片,然后雙擊圖片文件名顯示圖像(請看圖3-3.8中的file1_dblclick事件過程)。在vb的控

22、件中除了form擁有picture屬性外,picturebox 和image這兩個控件也有picture屬性。image控件提供了一個stretch(伸展)屬性,可以限定圖形顯示在固定的區(qū)域中,即圖片的大小會自動變成圖像框的固定大小的大小,這樣會使圖片可以完整地顯示出來,但缺點是會使圖片產(chǎn)生變形。步驟7:保存程序。練習(xí):做一個簡單的文件瀏覽器,要求:(1)在左邊窗口中選擇驅(qū)動器、目錄、文件,在右邊窗口中顯示選定的文件內(nèi)容。(2)在左邊窗口選擇了驅(qū)動器和目錄后,在上方的地址欄處顯示當(dāng)前的文件地址。如圖3-3.9:圖3-3.9閱讀材料: 1、picturebox、image控件及其常用屬性:pic

23、turebox圖片框控件,用于顯示和編輯圖形;image圖像控件,用于顯示圖像。其常用屬性如下表:屬性說明autosize控制對象自動調(diào)整大小以自適應(yīng)所包含的內(nèi)容(picturebox)backcolor設(shè)置背景顏色(picturebox)backstyle設(shè)置邊框類型picture設(shè)置欲顯示的圖形文件2、optionbutton控件及其常用屬性:optionbutton選項按鈕,用戶在一組選項中只可選擇其中一個。其常用屬性如下表。屬性說明caption設(shè)置標(biāo)題font設(shè)置或返回字體名稱picture設(shè)置欲顯示的圖形文件value返回或設(shè)置控件的狀態(tài)3、drivelistbox、dirlist

24、box、filelistbox控件及其常用屬性:drivelistbox驅(qū)動器列表框控件,用于顯示驅(qū)動器盤符。dirlistbox目錄列表框控件,用于顯示目錄或文件夾。filelistbox文件列表框控件,用于顯示當(dāng)前目錄下的文件。其常用屬性如下表:屬性說明hidden設(shè)置文件列表框中是否含有hidden文件(隱含文件)patten設(shè)置文件列表框中將要顯示的文件類型readonly設(shè)置文件列表框中是否能被編輯system設(shè)置文件列表框中是否含有system文件(系統(tǒng)文件)4、loadpicture函數(shù)將圖形載入到窗體的picture屬性、picturebox控件或image控件。格式:load

25、picture(stringexpression)stringexpression是必要的,為被載入的圖形文件名。5、chdir語句chdir語句,改變當(dāng)前的目錄或文件夾。格式:chdir pathpat它指明哪個目錄或文件夾將成為新的缺省目錄或文件夾。path 可能會包含驅(qū)動器。如果沒有指定驅(qū)動器,則 chdir 在當(dāng)前的驅(qū)動器上改變?nèi)笔∧夸浕蛭募A。3、chdrive語句chdrive語句,改變當(dāng)前的驅(qū)動器。格式:chdrive drivedrive指定一個存在的驅(qū)動器。如果使用零長度的字符串(),則當(dāng)前的驅(qū)動器將不會改變。如果drive參數(shù)中有多個字符,則chdrive只會使用首字母。第

26、四課:做個簡單的文本編輯器 大家都用過windows中的“記事本”程序,學(xué)了vb編程后有沒有想過自己動手做一個文本編輯器呢?其實這并不難。下面我們就來做一個如圖3-4.1所示的簡單文本編輯器。圖3-4.1 文本編輯器操作步驟如下: 步驟1:新建一個窗體。步驟2:在窗體中新建一個textbox對象text1。在這里,textbox的作用是用于輸入文本。textbox對象顯示出來的文字對應(yīng)的是它的text屬性值,而不是caption屬性值。將textbox對象的multiline屬性設(shè)置為true, textbox對象就可以接收多行文本了。步驟3:新建一個frame(框架)控件,把frame的ca

27、ption屬性改為“字型”。除了有一個textbox用來給用戶輸入文字外,還可以設(shè)計一些簡單的文字修飾的選項給用戶使用。這里利用復(fù)選框控件checkbox設(shè)置文本的字型, 選項按鈕控件optionbutton設(shè)置文本的字號與顏色。由于在一個窗體中所有的optionbutton按鈕歸為一組,選擇時只能選擇一個。為了能單獨設(shè)置字號與顏色,需要增加frame(框架)對象來把字號與顏色分開。框架的作用是將對象分組。注意:使用frame進行分組時,一定要先建frame,然后在frame里添加其他的對象,這樣frame才會起作用.步驟4:在字型frame中新建三個checkbox控件(如圖3-4.2所示)

28、,將它們的名稱分別改為:chkbold、chkitalic、chkunderline,并將它們的caption屬性修改為:粗體、斜體、下劃線。步驟5:再建兩個frame架框,分別把frame的caption屬性改為“字號”和“顏色”。在兩個框架中分別建三個optionbutton控件,按圖3-4.1所示修改其caption屬性。步驟6:編寫程序代碼分別對有關(guān)對象的click事件編寫程序代碼:修改字型 修改字型的屬性有: fontbold (粗體)、fontitalic (斜體)、fontunderline (下劃線)。例如將text1控件的字型設(shè)置為黑體:text1.fontbold=true

29、本例中我們使用checkbox對象來改變字型,當(dāng)選中復(fù)選框chkbold時,chkbold.value的值為true,否則為false。代碼應(yīng)該這樣寫:text1.fontbold=chkbold.valuechkbold對象的click事件過程如下:private sub chkbold_click()text1.fontbold=chkbold.valueend sub修改字號 修改字號的屬性為fontsize,例如將text1控件的字號設(shè)置為16:text1.fontsize=16修改顏色 字體的顏色屬性為forecolor,例如將text1中的字變成紅色,代碼可以這樣寫:text1.f

30、orecolor=vbred其中vbred表示紅色。(依次類推:vbwhite表示白色、vbblack表示黑色)程序運行時,就可以在text框里輸入文本。點擊字體、字號、顏色就可以改變文本的各個屬性。下面來給文本編輯器做菜單。步驟7:單擊【工具】【菜單編輯器】打開菜單編輯器(如圖3-4.3)。圖3-4.3 菜單編輯器步驟8:在“標(biāo)題”中填寫菜單的選項名稱。步驟9:在“名稱”中填寫對應(yīng)的事件名稱。步驟10:通過上、下、左、右鍵來調(diào)整菜單的位置。下一級的子菜單也可以通過這個編輯器來完成。如圖3-4.3:圖中的“文件”、“字型”、“字號”等頂頭的文字表示一級菜單,而“退出”是“文件”的子菜單;“粗體

31、”、“斜體”、“下劃線”是“字型”的子菜單。也就是說當(dāng)我們輸入完“文件”后,點【下一個】直接輸入下一級子菜單的名稱,然后點按向右的按鈕,就可以把“退出”當(dāng)作“文件”的子菜單了!步驟11:單擊【確定】完成菜單的編寫。步驟12:對菜單事件編程。在窗體上點擊需要編程的菜單選項,就會彈出對應(yīng)的菜單的事件代碼窗口。然后在代碼窗口里編寫需要的語句。例如:菜單【文件】【退出】是退出程序,那么我們就可以在代碼窗口里寫上“end”語句:private sub exit_click()endend sub如果在菜單項后面加上(&)就可以定義熱鍵。例如:退出(&x),在菜單上顯示出來的就是:退出(x)。程序運行時,

32、我們可以按alt鍵打開菜單,然后按對應(yīng)的熱鍵來進行菜單的操作。 步驟13:運行程序,利用菜單對文字進行修飾。步驟14:保存程序。練習(xí):模仿windows的記事本程序,設(shè)計一個與記事本界面、功能相近的程序。閱讀材料: 1、 checkbox控件及其常用屬性 checkbox復(fù)選框控件,用戶可以一次選擇多個復(fù)選框項。其常用屬性說明如下表:屬性說明caption設(shè)置標(biāo)題value返回或設(shè)置控件的狀態(tài)2、 frame控件及其常用屬性 frame框架控件,可以將其他控件放在其中并按類對控件分組。其常用屬性說明如下表:屬性說明caption設(shè)置標(biāo)題3、 textbox控件及其常用屬性 textbox文本框

33、控件,用于輸入和顯示文本。其常用屬性說明如下表:屬性說明borderstyle設(shè)置對象的邊框樣式multiline設(shè)置是否可以接受多行文本passwordchar設(shè)置一個值,決定是否在控件中顯示用戶鍵入字符或保留區(qū)字text設(shè)置控件中包含的文本tooltiptext設(shè)置當(dāng)鼠標(biāo)在控件上暫停時顯示的文本1. 文字的四個屬性:fontbold(粗體)、fontitalic(斜體)、fontunderline(下劃線)、fontsize(字號) 第五課:“你猜對了嗎?”-分支結(jié)構(gòu)的程序設(shè)計 用vb編寫的程序,按照程序運行的順序可以分為三種基本結(jié)構(gòu):順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。順序結(jié)構(gòu)的程序,程序的運

34、行的順序是從前面到后面逐句執(zhí)行的,如圖3-5.1所示:圖3-5.1 順序結(jié)構(gòu)程序流程圖分支結(jié)構(gòu)的程序,是根據(jù)條件的成立與否來決定程序執(zhí)行的順序,如圖3-5.2所示,如果條件成立就會執(zhí)行語句塊1,不會執(zhí)行語句塊2,同樣,如果條件不成立就會執(zhí)行語句塊2,而不會執(zhí)行語句塊1.圖3-5.2 分支結(jié)構(gòu)程序流程圖分支結(jié)構(gòu)又稱為選擇結(jié)構(gòu)。循環(huán)結(jié)構(gòu)的程序,是根據(jù)條件成立與否,來決定是否重復(fù)執(zhí)行某一段程序,如圖3-5.3所示:如果條件成立,則執(zhí)行“語句塊”,執(zhí)行完“語句塊”后,又重新檢查條件是否還成立,若成立則再一次執(zhí)行“語句塊”,否則程序?qū)⑥D(zhuǎn)去執(zhí)行循環(huán)結(jié)構(gòu)后面的語句。圖3-5.3 循環(huán)結(jié)構(gòu)程序流程圖一般情況下

35、,程序都是按照順序結(jié)構(gòu)的方式運行的,除非遇上改變程序運行方向的語句。這一節(jié)課我們就來學(xué)習(xí)編寫分支結(jié)構(gòu)的程序。例一:編寫一個判斷題程序,如圖3-5.4所示。當(dāng)單擊“確定”按鈕時顯示你的選擇是對還是錯。操作步驟如下:步驟1:新建一個工程。步驟2:在form中新建2個label對象,用于顯示題目。步驟3:新建兩個optionbutton,用于顯示選擇題答案。步驟4:新建一個commandbutton對象command1,用于提交答案。步驟5:編寫程序代碼。當(dāng)單擊“確定”按鈕時,需要判斷你的選擇是對還是錯。其判斷過程如下:圖3-5.5在vb里,通常使用“tfthen”語句來實現(xiàn)一個程序的轉(zhuǎn)向。簡單的“

36、tfthen”語句的格式如下:if then else end if上述語句稱為條件分支語句,中括號括住的語句可以省略。“tfthen”語句的含義是:如果條件表達(dá)式成立,則執(zhí)行,否則,執(zhí)行。我們在“確定”按鈕的click事件中編寫如下代碼:private sub command1_click()if option1.value = true thenmsgbox “答對了”,vbokonly,“選擇結(jié)果”endend ifif option2.value = true thenmsgbox “答錯了”,vbokonly,“選擇結(jié)果”end ifend sub程序中用了兩個ifthen語句,也可

37、以簡化成一個:以上的事件過程也可以簡化如下:private sub command1_click()if option1.value = true thenmsgbox “答對了”,vbokonly,“選擇結(jié)果”endelsemsgbox “答錯了”,vbokonly,“選擇結(jié)果”end ifend sub一般情況下,一個 if 的后面都要跟一個 end if,但也有特殊的,例如:if a=1 then b=2也就是說,如果if后面只有一條語句,可以在 then 后直接寫語句而不用換行,也不用寫 end if;但如果你需要換行,那么就必須要有一個end if。在上述事件過程中使用了msgbox

38、語句,msgbox的使用格式為:msgbox prompt, buttons , title其中:prompt是必需的,表示對話框里要顯示的提示內(nèi)容。buttons是可選的,指定顯示按鈕的數(shù)目及形式;title也是可選的,在對話框標(biāo)題欄中顯示的標(biāo)題內(nèi)容。比如,執(zhí)行代碼:msgbox “答對了”,vbokonly,“選擇結(jié)果”屏幕將會顯示如圖3-5.6所示對話框:圖3-5.6例二:設(shè)計一個如圖3-5.7所示的“口算比賽”程序 操作步驟:步驟1:新建一個工程。步驟2:在窗體中新建八個label,分別用于顯示標(biāo)題、題目、正誤、成績。步驟3:新建一個textbox對象text1,用于接收答案。步驟4:

39、新建一個commandbutton對象command1,用于提交答案。步驟5:編寫程序代碼。1、隨機生成題目在窗體的load事件中編寫如下代碼:private sub form_load()randomizelabel1.caption = int(rnd * 99 + 1)label3.caption = int(rnd * 99 + 1)end sub程序中用到了rnd函數(shù),rnd函數(shù)稱為隨機函數(shù),它隨機產(chǎn)生一個01之間的小數(shù)。因此,rnd*99相當(dāng)于一個介于099之間的小數(shù)。rnd函數(shù)有一個特性,每次運行程序都會返回相同的數(shù),為了避免這個現(xiàn)象的出現(xiàn),需要在rnd函數(shù)使用之前執(zhí)行rando

40、mize語句。int(x)函數(shù)稱為取整函數(shù),它的作用就是對x取整。因此表達(dá)式int(rnd * 99 + 1)產(chǎn)生一個小于或等于100的自然數(shù)。2、接收學(xué)生輸入的答案text1可以接收用戶輸入的數(shù)據(jù),用它來接收學(xué)生輸入的答案。3、判斷答案的正誤當(dāng)學(xué)生輸入答案并點擊了確定按鈕,程序就對學(xué)生輸入的答案進行判斷。因此對“確定”按鈕的click事件編寫如下代碼:if val(text1) = val(label1) + val(label3) thenlabel5.caption = elselabel5.caption = end if由于輸入到textbox中的全部是字符,但要計算的結(jié)果卻是數(shù)字,

41、所以必須把數(shù)字字符轉(zhuǎn)化成為數(shù)值數(shù)字。這樣就需要用到一個轉(zhuǎn)換函數(shù):val( )函數(shù),它的作用是將一個數(shù)字字符轉(zhuǎn)換成為相等的數(shù)值。4、記錄學(xué)生的成績在程序的執(zhí)行期間,可能有些中間結(jié)果需要保存起來,這時需要使用變量來臨時存儲這些結(jié)果。將運算結(jié)果臨時存儲到變量中可以使用賦值語句,其格式是:=比如:x=3+5,就是將3+5的運算結(jié)果保存到變量x中。要特別說明的是,這里的“=”號叫做賦值號,其含義是把右邊表達(dá)式的值賦給左邊的變量,與數(shù)學(xué)上的“=”號含義不同。變量的名稱必須是以英文字母開頭,可以使用字母和數(shù)字來作為變量的名稱。當(dāng)學(xué)生回答正確時,程序自動將學(xué)生的成績加10分,回答錯誤就減5分。為此,我們就得使

42、用一個變量cj來記錄學(xué)生的成績。如果學(xué)生做對了,就把原來的成績cj加上10分,然后再存儲在變量cj中,用語句表示就是這樣的:cj=cj+10如果做錯了,則:cj=cj-5這樣一來,源代碼就變成:private sub command1_click()if val(text1) = val(label1) + val(label3) then label5.caption = cj = cj + 10else label5.caption = cj = cj - 5end iflabel8.caption = cjlabel1.caption = int(rnd * 99 + 1)label3.

43、caption = int(rnd * 99 + 1)end sub練習(xí):1、 設(shè)計一個一位數(shù)乘一位數(shù)的口算練習(xí)程序。 2、 設(shè)計一個人和計算機玩石頭、剪刀、布的游戲程序。 提示:利用rnd函數(shù)來確定電腦出拳,然后用變量記錄自己的出拳,最后比較兩個出拳,得出勝負(fù)。閱讀材料: 1、變量聲明 在vb中,要使用變量,一般要利用dim語句對變量進行聲明。變量的聲明寫在程序的開始部分。其格式為:dim 變量名稱 (as 數(shù)據(jù)類型)如圖3-5.8,將a聲明為整數(shù)型變量。圖3-5.8 變量的聲明2、數(shù)據(jù)類型表 數(shù)據(jù)類型取值范圍數(shù)值型整型byte0-255integer-32768-32767long-214

44、7483648-2147483647實型single-3.402823e38-1.401298e45double-1.79769313486231e308-4.94065645841247e308currency-922337203685477.5808-922337203685477.5807字符串string兩個字符一個字節(jié)布爾型booleantrue、false日期型date100年1月1日至9999年12月31日注:如果沒有注明數(shù)據(jù)類型則被聲明為variant類型。第六課:讓飛機飛起來-循環(huán)結(jié)構(gòu)的程序設(shè)計 這一節(jié)課,我們要設(shè)計一個飛機飛行的程序,如圖3-6.1所示。設(shè)計的思路是,使飛機

45、的顯示位置不斷地往前移,產(chǎn)生一種飛行的效果。為了模擬飛機不斷地往前移動的過程,需要使用一個新的語句:foxnext,這就是一個循環(huán)結(jié)構(gòu)語句。fornext語句 fornext的語句格式為:for = to step next fornext語句運行的流程如圖3-6.2所示。 圖3-6.2 循環(huán)結(jié)構(gòu)程序流程圖例如,下面是一個求1+2+3+99+100的簡單程序: dim counter,nsumnsum=0for counter=1 to 100 step 1 nsum = nsum + counternext counter程序運行的結(jié)果是,變量nsum的值變?yōu)?050,變量counter的值變?yōu)?01.for與next是一對語句,必須成對出現(xiàn),循環(huán)變量用于控制循環(huán)體的循環(huán),循環(huán)的次數(shù)由初值、終值與步長決定。整個循環(huán)的過程如下:1. 把初值賦給循環(huán)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論