




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
試驗(yàn)一VisualBasic集成開發(fā)環(huán)境和程序設(shè)計(jì)初步試驗(yàn)?zāi)繕?biāo):了解VisualBasic系統(tǒng)對(duì)計(jì)算機(jī)軟、硬件要求。掌握開啟和退出VisualBasic方法。了解VisualBasic集成環(huán)境組成,各部分作用。掌握建立、編輯和運(yùn)行一個(gè)簡(jiǎn)單VisualBasic應(yīng)用程序全過程。掌握常見控件(文本框、標(biāo)簽、命令按鈕)應(yīng)用。感性認(rèn)識(shí)控件(對(duì)象)、過程、事件、屬性等概念,初步認(rèn)識(shí)窗體、控件、屬性、過程在程序設(shè)計(jì)中作用和關(guān)系。試驗(yàn)內(nèi)容:建立一個(gè)“標(biāo)準(zhǔn)exe”類型應(yīng)用程序,要求單擊“確定”按鈕,在屏幕上顯示“您好,世界!”,單擊“退出”按鈕,退出應(yīng)用程序。界面圖1-1所表示,以sy1.frm、sy1.vbp和sy1.exe文件保留到自己軟盤上。圖1-1試驗(yàn)準(zhǔn)備:復(fù)習(xí)相關(guān)知識(shí):1)VB集成化開發(fā)環(huán)境2)建立VB應(yīng)用程序2.正確寫出兩事件代碼,列出各控件所需屬性(屬性項(xiàng)目和屬性值)。試驗(yàn)步驟:1.VisualBasic6.0漢字版開啟和退出。開啟:1)單擊“開始”按鈕,然后選擇“程序”中“MicrosoftVisualBasic6.0漢字版”,單擊即可?;颍?jiǎn)螕糇烂嫔稀癕icrosoftVisualBasic6.0漢字版”圖標(biāo),2)新建工程對(duì)話框,單擊打開“標(biāo)準(zhǔn)exe”按鈕,進(jìn)入環(huán)境。退出:1)單擊集成環(huán)境窗口右上角關(guān)閉按鈕。2)單擊“文件”下拉菜單中“退出”選項(xiàng)。2.界面設(shè)計(jì):(1)添加標(biāo)簽Label1。(2)添加命令按鈕Command1。(3)添加命令按鈕Command2。(4)使用格式菜單,使用兩命令按鈕尺寸完全一樣,并恰好處于窗體中間位置。3.設(shè)置界面對(duì)象屬性:能夠經(jīng)過用鼠標(biāo)右鍵單擊某一窗體或控件,在彈出菜單中為其設(shè)置屬性,也能夠隸屬性窗口對(duì)象列表框中選擇要設(shè)置屬性對(duì)象。1)設(shè)置Form窗體Caption屬性為“Hello,World!”2)設(shè)置Command1按鈕Caption屬性為“確定”,名稱屬性為“OK”.3)設(shè)置Command2按鈕Caption屬性為“退出”,名稱屬性為“Cancel”。4)設(shè)置Label1標(biāo)簽Caption屬性為空,F(xiàn)ont屬性對(duì)話框中字體為隸書,字體式樣為粗體,大小為二號(hào)。4.編寫代碼:在Form(窗體)窗口中雙擊鼠標(biāo)左鍵或單擊視圖菜單中代碼窗口菜單項(xiàng),進(jìn)入代碼窗口。用鼠標(biāo)單擊第一個(gè)列表框右邊下拉箭頭,從彈出下拉列表框中選擇OK,然后在第二個(gè)列表框中選擇Click事件,這時(shí)代碼窗口出現(xiàn)了程序代碼過程頭和過程尾。1)在OK_Click事件中輸入下面代碼:Label1.Caption=“您好,世界”2)在Cancel_Click事件中輸入下面代碼:UnloadMe5.保留文件:1)選擇文件菜單中工程另存為保留工程文件SY1.vbp2)選擇文件菜單中Form另存為保留窗體文件SY1.frm6.程序運(yùn)行:1)在運(yùn)行菜單中選擇開啟菜單項(xiàng)?;颍?jiǎn)螕艄ぞ邫谥虚_啟按鈕。2)單擊確定按鈕。3)單擊退出按鈕。若程序不能正常運(yùn)行,應(yīng)用運(yùn)行菜單中結(jié)束菜單項(xiàng),終止程序運(yùn)行,然后檢驗(yàn)屬性設(shè)置和程序代碼是否有誤,直到正常運(yùn)行為止。程序正常運(yùn)行后,應(yīng)再一次存盤保留工程文件。編譯應(yīng)用程序:選擇文件菜單中生成firstapp.exe菜單項(xiàng),出現(xiàn)生成工程對(duì)話框輸入文件名SY.exe,單擊確定按鈕,生成應(yīng)用程序。試驗(yàn)二次序程序設(shè)計(jì)試驗(yàn)?zāi)繕?biāo):掌握表示式,賦值語句正確書寫規(guī)則。掌握常見函數(shù)使用。掌握InputBox和MsgBox使用。試驗(yàn)內(nèi)容:1.編一個(gè)華氏溫度和攝氏溫度之間轉(zhuǎn)換程序,運(yùn)行界面圖2-1所表示。要使用轉(zhuǎn)換公式是:F=9C/5+32‘?dāng)z氏溫度轉(zhuǎn)化為華氏溫度,F(xiàn)為華氏C=(F-32)5/9‘華氏溫度轉(zhuǎn)化為攝氏溫度,C為攝氏要求用按鈕實(shí)現(xiàn)轉(zhuǎn)換。即單擊“華氏轉(zhuǎn)”按鈕,則將攝氏溫度轉(zhuǎn)化為華氏溫度。一樣,單擊“攝氏轉(zhuǎn)”按鈕,則將華氏溫度轉(zhuǎn)化為攝氏溫度。圖2-1[試驗(yàn)?zāi)繕?biāo)]掌握簡(jiǎn)單程序編寫、輸入數(shù)據(jù)方法、不一樣數(shù)據(jù)類型轉(zhuǎn)換。[提醒和分析]1)上述公式中右邊變量F、C應(yīng)該是有值,該值可經(jīng)過Text1、Text2分別賦值取得,然后經(jīng)過公式計(jì)算得到轉(zhuǎn)換結(jié)果。也能夠不使用變量F、C,直接使用Text1、Text2進(jìn)行計(jì)算。2)Text文本框存放String類型,為了程序正常運(yùn)行,應(yīng)經(jīng)過Val()函數(shù)將字符串轉(zhuǎn)換為數(shù)值類型。3)本題關(guān)鍵是將文本框內(nèi)容怎樣代到轉(zhuǎn)換公式中。2.使用Move方法移動(dòng)標(biāo)簽,參見圖2-2所表示。3.使用Print方法,輸出圖2-3所表示圖形。圖2-24.輸入半徑,計(jì)算圓周長和圓面積。深入要求,為了確保程序運(yùn)行正確,對(duì)輸入半徑要進(jìn)行正當(dāng)性檢驗(yàn),若發(fā)覺輸入數(shù)中有非法數(shù)字,利用MsgBox顯示犯錯(cuò)信息,利用SetFocus方法定在犯錯(cuò)文本框處,重新輸入。圖2-35.利用計(jì)算機(jī)處理古代數(shù)學(xué)問題“雞兔同籠問題”。即已知在同一籠子里有總數(shù)為m只雞和兔,雞和兔總腳數(shù)為n只,求雞和兔各有多少只?[試驗(yàn)?zāi)繕?biāo)]掌握InputBox函數(shù)、MsgBox過程使用;利用計(jì)算機(jī)解初等數(shù)學(xué)題;為了確保有正確解,提前使用If語句。[提醒和分析]1)m,n經(jīng)過InputBox()函數(shù)取得;雞、兔只數(shù)經(jīng)過已知m,n列出方程可解,但不要求出荒唐解(比如3.5只雞、4.5只兔,或求得只數(shù)為負(fù)數(shù)),若出現(xiàn)荒唐解,要求顯示相關(guān)信息,并重新輸入。2)設(shè)x為雞只數(shù),y為兔子只數(shù);已知總頭數(shù)m和腳數(shù)n,則x+y=m2x+4y=n得y=n/2–mx=m–y從公式推得:當(dāng)總腳數(shù)是偶數(shù)而且腳數(shù)在二至四倍頭數(shù)之間(2m<n<4m)時(shí),才可有正確解。判定一個(gè)數(shù)是否是偶數(shù),只要經(jīng)過判定Mod2是否為0即可。二條件在程序中表示為:nmod2=0和n>2*mandn<4*m.3)算例:頭數(shù)取1、1、2、20時(shí)腳數(shù)對(duì)應(yīng)取4、2、6、100試驗(yàn)三選擇結(jié)構(gòu)程序設(shè)計(jì)試驗(yàn)?zāi)繕?biāo):掌握邏輯表示式正確書寫形式。掌握單分支和雙分支條件語句使用。掌握多分支條件語句使用。掌握情況語句使用及和多分支語句區(qū)分。試驗(yàn)內(nèi)容:1.在購置某物品時(shí),若所花錢x在下述范圍內(nèi),所付錢y按對(duì)應(yīng)折扣支付:xx<10000.9x1000≤x<y=0.8x≤x<30000.7xx≥3000[提醒和分析]1)此例用多分支if語句實(shí)現(xiàn),注意計(jì)算公式和條件表示式正確書寫。2)多個(gè)條件,可有兩種表示,方法一:從小到大或從大到小依次一一表示;方法二:不管次序,將條件區(qū)間列出。2.某市公用電話收費(fèi)標(biāo)準(zhǔn)以下:通話時(shí)間在3分鐘以下,收費(fèi)0.50元;3分鐘以上,則每超出1分鐘加收0.15元;在7:00—19:00之間通話者,按上述收費(fèi)標(biāo)準(zhǔn)全價(jià)收費(fèi);在其它時(shí)間通話者,一律按收費(fèi)標(biāo)準(zhǔn)半價(jià)收費(fèi)。試計(jì)算某人在T時(shí)間通話S分鐘,應(yīng)繳多少電話費(fèi)。運(yùn)行界面圖3-1所表示。圖3-1[試驗(yàn)?zāi)繕?biāo)]1)利用前面學(xué)過選擇結(jié)構(gòu),學(xué)會(huì)用計(jì)算機(jī)處理時(shí)間問題能力。2)時(shí)間函數(shù)、子字符串函數(shù)、格式函數(shù)綜合使用。[提醒]1)時(shí)間能夠經(jīng)過文本框輸入;也能夠經(jīng)過Time時(shí)間函數(shù)求適當(dāng)初通話時(shí)間。但要經(jīng)過Cdate函數(shù)將字符串類型轉(zhuǎn)換成日期類型,為(2)中計(jì)算通話時(shí)間做準(zhǔn)備。比如:date1=CDate(Text1.Text):date2=CDate(Text2.Text)2)通話時(shí)間能夠經(jīng)過DateDiff()函數(shù)將兩個(gè)時(shí)間以秒為間隔形式相減。也能夠利用Hour、Minute和Second分別取小時(shí)、分和秒,然后化成以秒為單位再相減。比如:st=DateDiff("s",date1,date2)/603)為了簡(jiǎn)化程序,以開始通話時(shí)間為是否享受半價(jià)收費(fèi)記費(fèi)方法。試驗(yàn)四循環(huán)結(jié)構(gòu)程序設(shè)計(jì)試驗(yàn)?zāi)繕?biāo):掌握For語句使用。掌握Do語句多種形式使用。掌握怎樣控制循環(huán)條件,預(yù)防死循環(huán)或不循環(huán)。試驗(yàn)內(nèi)容:編一個(gè)程序,顯示出全部水仙花數(shù)。所謂水仙花數(shù),是指一個(gè)3位數(shù),其各位數(shù)字立方和等于該數(shù)字本身。比如,153是水仙花數(shù),因?yàn)?53=13+53+33。[提醒和分析]解該題方法有兩種:1)利用三重循環(huán),將三個(gè)數(shù)連接成一個(gè)3位數(shù)進(jìn)行判定。比如,將1—9連接成一個(gè)位數(shù),程序段以下:s=0Fori=1To9s=s*10+iNextI2)利用單循環(huán)將一個(gè)3位數(shù)逐位分離后進(jìn)行判定。比如,將一個(gè)9位數(shù),從右邊開始逐位分離,程序段以下:s=DoWhiles>0s1=sMod10s=s\10Prints1;‘從右邊開始顯示分離出每一位Loop遞推法:猴子吃桃子。猴子在一天摘了若干個(gè)桃子,當(dāng)日吃掉二分之一多一個(gè);第二天接著吃剩下桃子二分之一多一個(gè);以后天天全部吃尚存桃子二分之一另一個(gè),到第七天早上要吃時(shí)只剩下一個(gè)了,問猴子那天共摘了多少個(gè)桃子?[分析]這是一個(gè)“遞推”問題,先從最終一天推出倒數(shù)第二天桃子,再從倒數(shù)第二天桃子推出倒數(shù)第三天桃子……設(shè)第n天桃子為Xn,那么它是前一天桃子數(shù)Xn-1二分之一減一。即:Xn=0.5Xn-1–1也就是:Xn-1=(Xn+1)×2已知:當(dāng)n=7第7天桃子數(shù)為1,則第6天桃子數(shù)由公式得4個(gè),依次類推,可求得第一天桃子數(shù)。有一根長度為321m鋼材料,要將它截取成兩種規(guī)格短料,規(guī)格a、b長度分別為17m和27m,每種最少1段,分割成a、b各多少段后,剩下殘料r最少?[分析]該題利用二重循環(huán)求殘料r最小值正數(shù),因?yàn)闅埩喜豢赡苁秦?fù)數(shù),不然和實(shí)際情況不符。試驗(yàn)五數(shù)據(jù)結(jié)構(gòu)---數(shù)組試驗(yàn)?zāi)繕?biāo)掌握數(shù)組申明、數(shù)組元素引用。掌握靜態(tài)數(shù)組和動(dòng)態(tài)數(shù)組使用差異。應(yīng)用數(shù)組處理和數(shù)組相關(guān)常見算法。試驗(yàn)內(nèi)容1.輸入一串字符,統(tǒng)計(jì)各字母出現(xiàn)次數(shù)(大小寫字母不區(qū)分),并對(duì)出現(xiàn)字母顯示其出現(xiàn)個(gè)數(shù),效果圖5-1所表示。圖5-1[分析]1)統(tǒng)計(jì)26個(gè)字母出現(xiàn)個(gè)數(shù),必需申明一個(gè)含有26個(gè)元素?cái)?shù)組,每個(gè)元素下標(biāo)表示對(duì)應(yīng)字母,元素值表示對(duì)應(yīng)字母出現(xiàn)次數(shù)。2)從輸入字符串中逐一取出字符,轉(zhuǎn)換成大寫字符(使得大小寫不區(qū)分),進(jìn)行判定。比如:c=UCase(Mid(Text1,I,1))2.要求輸入若干同學(xué)成績,計(jì)算平均分和高于平均分人數(shù),并將這兩項(xiàng)放在該數(shù)組最終。參見圖5-2所表示。圖5-2試驗(yàn)六常見控件試驗(yàn)?zāi)繕?biāo):掌握常見控件關(guān)鍵屬性、事件和方法。掌握常見ActiveX控件特征,熟練應(yīng)用這些高級(jí)控件進(jìn)行編程。初步掌握創(chuàng)建基于圖形用戶界面應(yīng)用程序過程。熟練掌握鍵盤事件、鼠標(biāo)事件及其事件過程編寫技藝。掌握一般拖放和OLE拖放原理,掌握實(shí)現(xiàn)拖放方法。試驗(yàn)內(nèi)容:1.編寫一個(gè)運(yùn)行界面圖6-1所表示程序。用戶能從“飯店菜單”把選定“菜”添加到下面列表框中。要求:“飯店菜單”列表框支持多項(xiàng)選擇[提醒]圖6-1假定“飯店菜單”和“我點(diǎn)菜”列表框名稱分別為List1和List2。因?yàn)樾枰贚ist1中能夠進(jìn)行多項(xiàng)選擇,所以MultiSelect屬性應(yīng)設(shè)為1或2,而且在“添加”事件過程中不能簡(jiǎn)單地用List2.AddItemList1.Text語句添加項(xiàng)目。應(yīng)編寫以下程序:SubCommand1_Click()Fori=0ToList1.ListCount-1IfList1.Selected(i)ThenList2.AddltemList1.List(i)EndIfNextEndSub2.設(shè)計(jì)一個(gè)運(yùn)行界面圖6-2所表示字幕滾動(dòng)程序。要求用時(shí)鐘控件和滾動(dòng)條調(diào)整和控制字幕滾動(dòng)速度,文字大小及距離窗體頂端距離是隨機(jī),從右向左連續(xù)滾動(dòng)。[試驗(yàn)?zāi)繕?biāo)]圖6-2掌握滾動(dòng)條、時(shí)鐘使用原理。[提醒和分析]1)FontSize屬性不能為0,所以用Int(1+Rnd*30)產(chǎn)生一個(gè)1—30數(shù)作為字體2)字幕“WindowsXP漢字世界……”是標(biāo)簽(Label1)標(biāo)題,用Move方法實(shí)現(xiàn)滾動(dòng),經(jīng)過改變移動(dòng)步長控制移動(dòng)速度。每次移動(dòng)高度是隨機(jī),用Int(Rnd*ScaleHeight)表示式?jīng)Q定;字體大小也是隨機(jī),由Int(1+Rnd*30)決定。3.編寫一個(gè)運(yùn)行界面圖6-3所表示點(diǎn)菜程序。用戶能從“飲料”和“主食”列表框中選擇食品,然后拖動(dòng)到“我中飯”列表框中。要求;用拖動(dòng)方法實(shí)現(xiàn)。圖6-3[提醒和分析]1)當(dāng)源對(duì)象被拖動(dòng)時(shí),源對(duì)象作為Source參數(shù)傳入事件過程中,Source代表源對(duì)象,經(jīng)過Source.Name屬性能夠確定被拖動(dòng)是哪個(gè)列表框。在目標(biāo)列表框DragDrop事件過程中,將源列表框中選定項(xiàng)目添加到目標(biāo)列表框中,然后刪除。2)“飲料”和“主食”列表框只能用Drag方法手工開啟拖操作,不能使用自動(dòng)拖放模式。因?yàn)榧偃缭O(shè)置自動(dòng)拖放模式,拖動(dòng)對(duì)象是整個(gè)列表框,無法選定其中項(xiàng)目。在“我中飯”列表框DragDrop過程中經(jīng)過Source參數(shù)可能知道源控件是哪一個(gè)列表框,Source.Name屬性指示源控件名稱。試驗(yàn)七界面設(shè)計(jì)試驗(yàn)?zāi)繕?biāo):學(xué)會(huì)使用對(duì)話框進(jìn)行編程。掌握窗口菜單、彈出式菜單和實(shí)時(shí)菜單設(shè)計(jì)方法。掌握工具欄、圖象列表框控件使用。掌握狀態(tài)欄控件使用。掌握RichTextBox控件使用。綜合應(yīng)用所學(xué)知識(shí),編制含有可視化界面應(yīng)用程序。試驗(yàn)內(nèi)容:1.設(shè)計(jì)一個(gè)運(yùn)行界面圖7-1所表示應(yīng)用程序。當(dāng)選擇“改變標(biāo)簽標(biāo)題顏色”按紐后,彈出顏色對(duì)話框,為標(biāo)簽標(biāo)題選擇一個(gè)顏色;當(dāng)選擇“編輯文本文件”按鈕后,彈出打開文件對(duì)話框,選擇一個(gè)文本文件后調(diào)用記事本程序編輯該文件。圖7-1[試驗(yàn)?zāi)繕?biāo)]掌握通用對(duì)話框使用方法和使用Shell函數(shù)運(yùn)行程序方法[提醒和分析]1)盡管程序中用到了顏色和打開文件兩個(gè)對(duì)話框,不過實(shí)際上只需一個(gè)通用對(duì)話框控件CommonDialog。2)能夠使用Shell函數(shù)運(yùn)行記事本程序。注意在記事本程序名和所選一個(gè)文件名之間要有一個(gè)空格符。3)需要經(jīng)過“工程1部件”命令選擇MicrosoftCommonDialogControl6.0選項(xiàng),將CommonDialog控件添加到工具箱。4)要使通用對(duì)話框能彈出顏色對(duì)話框,使用ShowColor方法,比如:CommonDialog1.ShowColor.顏色對(duì)話框經(jīng)過Color屬性返回所選擇顏色,將其值給予標(biāo)簽ForeColor屬性即可改變標(biāo)簽前景顏色。比如:Label1.ForeColor=CommonDialog1.ShowColor5)對(duì)于同一通用對(duì)話框,要使其能顯示成文件打開對(duì)話框形式,可在另一事件中使用ShowOpen方法。通用對(duì)話框FileName屬性提供所選擇文件名,將記事本程序名(包含目錄路徑名)和所選擇文件名組成一個(gè)字符串,作為Shell函數(shù)參數(shù)即可經(jīng)過記事本程序打開所選擇文件。在結(jié)構(gòu)字符串時(shí)記事本程序名notepad.exe和所選擇一個(gè)文本文件名之間必需要有一個(gè)空格符。比如:i=Shell(“C:\Winnt\notepad.exe”&CommonDialog1.FileName,1)2.在窗體上放置一個(gè)文本框,設(shè)置它Multiline屬性為True.設(shè)計(jì)一個(gè)含有2個(gè)主菜單項(xiàng)菜單系統(tǒng),分別為“菜單1”和“菜單2”。其中,“菜單1”包含“清除”、“結(jié)束”兩個(gè)菜單命令。“菜單2”包含“12號(hào)字體”、“16號(hào)字體”、“粗體”、“斜體”4個(gè)菜單命令,圖7-2和圖7-3所表示。為菜單項(xiàng)編寫相關(guān)程序代碼:圖7-2圖7-3“清除”命令:清除文本框中所顯示內(nèi)容?!?2號(hào)字體”或“16號(hào)字體”命令:把文本框漢字本字體大小設(shè)置為12或6磅?!按煮w”或“斜體”命令:在菜單項(xiàng)左邊加上或取消標(biāo)識(shí)“√”,控制文本框中文本字型改變。窗體上“菜單2”顯示是否和文本框中有元內(nèi)容相關(guān),當(dāng)清除文本框中內(nèi)容時(shí),隱藏“菜單2”,當(dāng)文本框中輸入信息后,顯示“菜單2”。另外可經(jīng)過鼠標(biāo)右鍵彈出“菜單2”。[試驗(yàn)?zāi)繕?biāo)]掌握窗體菜單制作;掌握在程序中改變窗體菜單屬性方法;掌握動(dòng)態(tài)改變菜單項(xiàng)方法和掌握彈出菜單制作和顯示方法。[提醒和分析]1)在菜單項(xiàng)左邊加上或取消標(biāo)識(shí)“√”可使用代碼:菜單項(xiàng)名.Checked=Not菜單項(xiàng)名.Checked2)文本框內(nèi)文本粗體字控制可使用代碼:Text1.FontBold=菜單項(xiàng)名.Checked或Text1.FontBold=NotText1.FontBold斜體字控制可類似地使用FontItalic屬性。3)利用菜單2Visible屬性控制菜單顯示和隱藏。在文本框Chang事件進(jìn)行設(shè)置。4)建立一個(gè)有菜單功效文本編輯器大致可分成以下三個(gè)步驟.步驟一:建立控件本例中只要在窗體上放置一個(gè)文本框(設(shè)置滾動(dòng)、多行屬性)和一個(gè)通用對(duì)話框.步驟二:設(shè)計(jì)菜單打開菜單編輯器,按要求對(duì)每一個(gè)菜單項(xiàng)輸入標(biāo)題、名稱和選擇對(duì)應(yīng)快捷鍵.步驟三:對(duì)菜單建立好以后,對(duì)對(duì)應(yīng)Click事件編程.5)在程序中改變菜單項(xiàng)Checked、Enabled屬性常見方法;菜單項(xiàng)名.Checked=Not菜單項(xiàng)名.Checked菜單項(xiàng)名.Enabled=Not菜單項(xiàng)名.Enabled6)動(dòng)態(tài)改變菜單項(xiàng)最簡(jiǎn)便方法是改變菜單項(xiàng)Visible屬性.當(dāng)Text1內(nèi)容發(fā)生改變時(shí)觸發(fā)Text1_Change事件。7)彈出菜單制作和一般菜單相同,程序運(yùn)行時(shí)使用Popupmenu方法顯示彈出菜單。3.在試驗(yàn)2“菜單1”子菜單“清除”前添加一個(gè)“查找”菜單命令。并和“清除”菜單命令之間有一條分隔線,單擊“查找”菜單命令,顯示圖7-4所表示查找對(duì)話框,當(dāng)在文本框內(nèi)輸入內(nèi)容時(shí),可在主窗體文本框內(nèi)查找指定內(nèi)容。圖7-4[試驗(yàn)?zāi)繕?biāo)]掌握窗體菜單編輯修改;掌握創(chuàng)建自定義對(duì)話框方法;掌握多沖窗體使用,窗體間數(shù)據(jù)傳輸方法。[提醒和分析]1)創(chuàng)建自定義對(duì)話框能夠從新窗體著手,通常來說,用戶通常不需要對(duì)它進(jìn)行移動(dòng)、改變尺寸、最大化或最小化等操作。經(jīng)過設(shè)置BorderStyle、ControlBox、MaxButton和MinButton屬性,可使對(duì)話框大小固定,刪除窗體“控件”菜單框、“最大化”按鈕和“最小化”按鈕這些項(xiàng)目。2)窗體之間數(shù)據(jù)傳輸可經(jīng)過在類模塊文件中申明全局變量完成,也能夠直接使用控件。若使用控件前加窗體名前綴。本例經(jīng)過控件傳輸數(shù)據(jù)。3)使用InStr函數(shù)能夠判定字符串1是否包含字符串2內(nèi)容,及所在位置。經(jīng)過文本框SelLength屬性可用負(fù)像顯示查到字符。為了能查找出多個(gè)相同字符,在InStr函數(shù)中使用參數(shù)指示查找起始位置。因?yàn)樵搮?shù)受到上次搜索影響,需要將其申明為靜態(tài)類型變量。4.在試驗(yàn)3基礎(chǔ)上按菜單功效添加工具欄,在窗體下方加入有2個(gè)窗格狀態(tài)欄,第1個(gè)窗格在按下Shift、Ctrl和Alt鍵時(shí)顯示對(duì)應(yīng)鍵名,第2個(gè)窗格顯示時(shí)鐘。[試驗(yàn)?zāi)繕?biāo)]掌握窗體菜單工具攔制作;掌握響應(yīng)ToolBar控件事件方法;掌握狀態(tài)欄制作和程序運(yùn)行時(shí)控件方法。[提醒和分析]1)建立窗體工具欄和狀態(tài)欄,必需要經(jīng)過MicrosoftWindowsCommonControls6.0選項(xiàng)將控件添加到工具箱。在建立窗體工具欄和狀態(tài)欄,必需要經(jīng)過MicrosoftWindowsCommonControl6.0選項(xiàng)將控件添加到工具欄。在ImageList控鍵圖象,建立ToolBar控件和IMageList控件連接,在ToolBar控件中添加按鈕。2)“菜單1”所提供功效各自獨(dú)立,按鈕樣式采取一般按鈕?!安藛?”中字號(hào)大小設(shè)置只許可選擇其中一項(xiàng),故按鈕樣式需采取編組按鈕或菜單按鈕。本例采取菜單按鈕設(shè)置字號(hào)。字體形式在選擇后能保持按鈕按下狀態(tài),可采取開關(guān)按鈕樣式。為便于編程,對(duì)每個(gè)按鈕設(shè)置標(biāo)識(shí)名。3)對(duì)菜單按鈕在Toolbar_ButtonMenuClick事件使用“SelectCaseButtonMenu.Key”調(diào)用對(duì)應(yīng)菜單事件過程,響應(yīng)所做選擇。其它類型按鈕在Toolbar1_ButtonClick事件中使用“SelectCaseButton.Key”語句響應(yīng)所做選擇。4)使用KeyDown或KeyUp事件判定對(duì)鍵盤操作。KeyDown事件提供keycode和shift兩個(gè)參數(shù),keycode參數(shù)為所按鍵鍵代碼,shift參數(shù)是響應(yīng)Shift鍵、Ctrl鍵和Alt鍵狀態(tài)一個(gè)整數(shù),分別對(duì)應(yīng)于值1、2和4。當(dāng)這些鍵組合在一起時(shí),shift返回它們組合值。比如,同時(shí)按下Ctrl和Alt這兩個(gè)鍵,則shift值為6。5)StatusBar控件是由Panels集合組成。能夠把Panels集合看做數(shù)組,每個(gè)窗格Panels對(duì)象是Panels一個(gè)元素。能夠經(jīng)過Text、Picture和Width屬性改變?nèi)魏蜳anels對(duì)象文本、圖象或?qū)挾?。要在窗格?nèi)顯示所按鍵名,使用StatusBar1.Panels(1).Text屬性。試驗(yàn)八文件試驗(yàn)?zāi)繕?biāo):文件系統(tǒng)控件使用。文件和目錄操作語句和函數(shù)使用。掌握次序文件、隨機(jī)文件及二進(jìn)制文件特點(diǎn)和使用。掌握文件打開、關(guān)閉和讀寫操作。學(xué)會(huì)文件在應(yīng)用程序使用。試驗(yàn)內(nèi)容:1.建立一個(gè)文本瀏覽器。窗體上放置驅(qū)動(dòng)器列表框、目錄框、文件列表框和兩個(gè)文本框,圖8-1所表示。要求:(1)文件列表框能過濾文本文件。(2)當(dāng)單擊某文本文件名后,在Text1顯示文件名(包含路徑),在Text2顯示該文件內(nèi)容;(3)當(dāng)雙擊某文件名后,調(diào)用記事本程序?qū)ξ谋疚募M(jìn)行編輯。圖8-1[試驗(yàn)?zāi)繕?biāo)]掌握文件系統(tǒng)控件使用、文本文件內(nèi)容讀取和顯示、應(yīng)用程序調(diào)用和對(duì)應(yīng)文檔讀取。[提醒和分析]1)第(2)小題利用次序文件讀寫語句,將磁盤上文件讀入,并在文本框顯示。2)第(3)小題調(diào)用Shell函數(shù),實(shí)施記事本可實(shí)施程序,并帶有文本文件為參數(shù)。3)文件系統(tǒng)控件關(guān)聯(lián)只要兩個(gè)事件;文本文件通常經(jīng)過LineInput語句讀取較安全、方便,但顯示時(shí)要加入回車、換行符;應(yīng)用程序調(diào)用利用Shell函數(shù),同時(shí)要將對(duì)應(yīng)文檔打開,二者之間必需加空格。2.建立一個(gè)含有3個(gè)學(xué)生三項(xiàng)內(nèi)容文本文件,內(nèi)容中分別為姓名、專業(yè)、年紀(jì),前二項(xiàng)字符串,后一項(xiàng)整形。單擊“建立”按鈕,分別利用:Print#文件號(hào),[輸出列表]Write#文件號(hào),[輸出列表]兩種格式同時(shí)建立兩個(gè)文件,文件名分別為c:\t1。txt和c:\t2.。txt(打開兩個(gè)文件,以不一樣文件號(hào)區(qū)分)。單擊“顯示”按鈕,從磁盤以行讀方法分別讀人剛建立兩個(gè)文件,并分別在兩個(gè)文本框顯示,比較之間區(qū)分。運(yùn)行結(jié)果圖8-2所表示。[試驗(yàn)?zāi)繕?biāo)]圖8-2掌握次序文件建立,讀取,Print、Write語句使用和區(qū)分。3.Print方法和Print語句比較。在窗體上顯示圖8-3所表示圖形,并將該圖形同時(shí)以文本文件A:\Tu.Txt寫到磁盤上,經(jīng)過文本編輯器顯示建立文件。[試驗(yàn)?zāi)繕?biāo)]掌握Print方法和Print語句使用和區(qū)分,掌握有規(guī)律字母生成。[分析]圖8-3該題較簡(jiǎn)單,Print方法在循環(huán)控制結(jié)構(gòu)中已介紹,作用結(jié)果顯示在窗體或圖形框上;Print語句處理相同,僅輸出到磁盤上。試驗(yàn)九圖形技術(shù)試驗(yàn)?zāi)繕?biāo):1、了解VisuslBasic圖形功效。2、掌握建立圖形坐標(biāo)系方法。3、掌握VisuslBasic圖形控件和圖形方法。4、掌握常見幾何圖形繪制。5、掌握簡(jiǎn)單動(dòng)畫設(shè)計(jì)方法。6、掌握實(shí)現(xiàn)圖形漫游方法。試驗(yàn)內(nèi)容:1.繪制圖9-1所表示圖形(不包含尺寸)。圖9-12.在Form1建立一個(gè)坐標(biāo)系。X軸正向向右,Y軸正向向上,原點(diǎn)在窗體中央。在坐標(biāo)系上用Line方法繪制-2π—2π之間正弦曲線,圖9-2所表示。圖9-2[試驗(yàn)?zāi)繕?biāo)]掌握坐標(biāo)系定義方法;掌握使用Line方法繪制圖形;了解CurrentX、CurrentY屬性功效。[提醒和分析]坐標(biāo)系定義可Scale方法。因?yàn)橐笞鴺?biāo)系原點(diǎn)在窗體中央,而要繪制正弦曲線在(-2π,2π)之間,考慮到四面空隙,故X軸范圍可定義在(-8,8),Y軸范圍可定義在(-2,2)之間。可采取Scale(-8,2)-(8,-2)定義坐標(biāo)系。坐標(biāo)軸用Line方法畫出。X軸上坐標(biāo)刻度線兩端點(diǎn)坐標(biāo)滿足(i,0)-(i,y0)。其中y0為一定值??捎醚h(huán)語句,改變i值來標(biāo)識(shí)X軸上坐標(biāo)刻度。類似地可處理Y軸上標(biāo)識(shí)坐標(biāo)刻度。坐標(biāo)軸上刻度線數(shù)字標(biāo)識(shí),可經(jīng)過CurrentX、CurrentY屬性設(shè)定目前位置,然后用Print輸出對(duì)應(yīng)數(shù)字。標(biāo)識(shí)數(shù)字可結(jié)合在分析(3)循環(huán)上一起完成。正弦曲線可用Line方法或Pest方法畫出,為使曲線光滑,相鄰兩點(diǎn)間距應(yīng)合適小。本題用Line方法繪制正弦曲線,相鄰兩個(gè)x點(diǎn)間距取0.01。3.設(shè)計(jì)一個(gè)圖9-3所表示指針式時(shí)鐘。[試驗(yàn)?zāi)繕?biāo)]掌握簡(jiǎn)單動(dòng)畫設(shè)計(jì)方法。圖9-3[提醒]VisuslBasic坐標(biāo)系中,采取逆時(shí)針繪圓,而時(shí)鐘指針移動(dòng)按順時(shí)針方向,故指針和坐標(biāo)軸夾角α必需乘以-1。另外,時(shí)鐘指針和參考點(diǎn)夾角需調(diào)整π/2。鐘指針經(jīng)過圓心,故指針另一端點(diǎn)和原點(diǎn)連線和坐標(biāo)軸夾角還需調(diào)整π。ss=Second(Time)為目前秒數(shù),秒針要指在對(duì)應(yīng)刻度線上,則α=-(ss×2π/60)+π/2,設(shè)mm=Minute(Time)為目前分?jǐn)?shù),分針和坐標(biāo)軸夾角α=-(mm×2π/60)+π/2,hh=Hour(Time)為目前時(shí)數(shù),時(shí)針和坐標(biāo)軸夾角α=-(hh×2π/12+mm×π/360)+π/2.鐘指針兩端點(diǎn)坐標(biāo):x1=R1cosα,y1=R1sinα;x2=R2cos(α+π),y2=R2sin(α+π)針移動(dòng)由時(shí)鐘控件Timer事件觸發(fā)。試驗(yàn)十程序調(diào)試和錯(cuò)誤處理試驗(yàn)?zāi)繕?biāo):1、掌握VB中常見程序調(diào)試方法和工具。2、熟悉VB中程序調(diào)試環(huán)境。3、掌握VB中常見程序錯(cuò)誤捕捉和處理。試驗(yàn)步驟:按下面步驟建立這個(gè)程序:運(yùn)行VisualBasic6.0并建立標(biāo)準(zhǔn)工程。單擊工具欄中Label控件,在Form1窗體上繪制一個(gè)標(biāo)簽,并將其Caption屬性設(shè)為“請(qǐng)輸入(0—20)之間整數(shù)”。單擊工具欄中Text控件,并在Form1窗體上繪制一個(gè)文本框,然后將其Text屬性設(shè)置為空。單擊工具欄中CommandButton控件,并放置在窗體中,將其Caption屬性設(shè)為“計(jì)算階乘”。最終再放置兩個(gè)標(biāo)簽到窗體Form1中,屬性采取缺省值。圖11-1顯示了設(shè)計(jì)好界面。在這個(gè)程序中需要處理事件過程只有Command1_Click。在該過程中,需要進(jìn)行參數(shù)檢驗(yàn)和階乘計(jì)算。這里編寫了兩個(gè)程序段來完成這兩個(gè)功效。1)檢驗(yàn)參數(shù)程序段用來檢驗(yàn)用戶輸入?yún)?shù)。返回值是檢驗(yàn)過正當(dāng)參數(shù)。2)利用循環(huán)計(jì)算一個(gè)數(shù)階乘值。它返回計(jì)算結(jié)果。圖11-1程序代碼以下:‘將用戶輸入轉(zhuǎn)化為數(shù)值參數(shù)DimnAsInteger,JieChengAsIntegern=Val(Text1.Text)‘檢驗(yàn)用戶輸入是否有效‘假如輸入錯(cuò)誤,則提醒用戶重新輸入‘輸入正確,就把檢驗(yàn)過參數(shù)作為結(jié)果返回Ifn>20Andn<0ThenLabel2.Caption=“輸入錯(cuò)誤!請(qǐng)重新輸入!”‘清除標(biāo)簽上以前顯示結(jié)果Label3.Caption=“”ElseLabel2.Caption=“結(jié)果是:”Label3.Caption=""‘清除標(biāo)簽上以前顯示結(jié)果Ifn=0orn=1ThenJieCheng=1Else‘不然,循環(huán)求解JieCheng=1‘變量付初值Fori=1TonJieheng=JieCheng*iNextiEndIfLabel3.Caption=JieChengEndIf到此,完成了這個(gè)程序編寫.下面測(cè)試程序運(yùn)行.(1)按F5鍵運(yùn)行程序,并在文本框中輸入0,單擊[計(jì)算階乘]按鈕,得到圖11-2所表示結(jié)果.這個(gè)結(jié)果示正確.圖11-2圖11-3(2)測(cè)試計(jì)算-1階乘,正常情況下程序應(yīng)顯示輸入錯(cuò)誤等提醒.在文本框中輸入”-1”,單擊[計(jì)算階乘]按鈕,這時(shí)看到圖11-3所表示結(jié)果.顯然這個(gè)結(jié)果和預(yù)期不符,是錯(cuò)誤.下面就來查找該錯(cuò)誤.因?yàn)檩斎霟o效參數(shù)-1時(shí)程序并沒有顯示犯錯(cuò)提醒,所以推測(cè)在檢驗(yàn)參數(shù)代碼中出現(xiàn)了問題.(3)打開代碼窗口,在檢驗(yàn)參數(shù)處設(shè)置斷點(diǎn),方便程序在檢驗(yàn)參數(shù)之前中止運(yùn)行,這么能夠查看程序狀態(tài)和中間結(jié)果.加入斷點(diǎn)操作可按下面步驟進(jìn)行:1).在代碼窗口中,把光標(biāo)移動(dòng)到要加斷點(diǎn)一行.(Ifn>20Andn<0Then)2)打開調(diào)試菜單,單擊[切換斷點(diǎn)]菜單項(xiàng)或按F9鍵,這時(shí)所選語句出現(xiàn)一條紅色亮條,標(biāo)志所設(shè)斷點(diǎn)處.圖11-4顯示了加入斷點(diǎn)處情況.圖11-4圖11-53)假如要去除斷點(diǎn),能夠打開[調(diào)試]菜單,單擊[切換斷點(diǎn)]菜單或按F9鍵,也能夠打開[調(diào)試]菜單,單擊[清除全部斷點(diǎn)]菜單項(xiàng)以清除全部斷點(diǎn)(4)按F5鍵運(yùn)行程序.在文本框中輸入“-1”,單擊[計(jì)算階乘]按鈕,這時(shí)程序在斷點(diǎn)處中止,圖11-5所表示.(5)在實(shí)施到if語句處時(shí),打開[視圖]菜單,單擊[立即窗口]菜單項(xiàng),這時(shí)桌面上出現(xiàn)了[立即]窗口.在[立即]窗口中輸入“?n”,觀察程序接收到參數(shù)植.圖11-6顯示了[立即]窗口使用效果.[立即]窗口中顯示n值為-1,說明程序接收到參數(shù)是正確,錯(cuò)誤可能在后面.下面單步實(shí)施,以跟蹤檢驗(yàn)參數(shù)這部分代碼運(yùn)行.圖11-6
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴金屬催化劑行業(yè)未來發(fā)展與市場(chǎng)機(jī)遇分析
- 紡織工程師證書考試的知識(shí)要求試題及答案
- 紡織行業(yè)人才的培養(yǎng)機(jī)制試題及答案
- 家庭清洗合同協(xié)議書
- 合租合同協(xié)議書圖片
- 紡織創(chuàng)意的市場(chǎng)應(yīng)用分析試題及答案
- 魚塘合同退出協(xié)議書
- 農(nóng)資賣賣合同協(xié)議書
- 《賞析》人物描寫課件
- 斷絕協(xié)議書 合同
- 2025年機(jī)制砂項(xiàng)目可行性研究報(bào)告
- 租地合同補(bǔ)充協(xié)議格式
- 【課件】2025屆高三英語一輪復(fù)習(xí)語法填空專題課件
- 2025年低壓電工資格證復(fù)審試題及答案詳解攻略
- 四川省瀘州市2025屆高三第三次教學(xué)質(zhì)量診斷性考試地理試題(含答案)
- 2025年陽江海上風(fēng)電項(xiàng)目可行性研究報(bào)告
- 2025新版靜療規(guī)范
- 水價(jià)與水市場(chǎng)機(jī)制聯(lián)動(dòng)機(jī)制-全面剖析
- 初中會(huì)考地理試題及答案
- 2025年函授土木工程試題及答案
- 《衛(wèi)星遙感技術(shù)》課件
評(píng)論
0/150
提交評(píng)論