




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、2022-3-7南京大學出版社1第1章 VB程序設(shè)計概述2022-3-7南京大學出版社出版社2你已經(jīng)掌握了計算機一般應(yīng)用技術(shù),如:你已經(jīng)掌握了計算機一般應(yīng)用技術(shù),如:WordExcel計算機繪圖計算機繪圖網(wǎng)頁設(shè)計網(wǎng)頁設(shè)計電子游戲電子游戲2022-3-7南京大學出版社出版社3 -在此之前,你只是機器的在此之前,你只是機器的“奴奴隸隸”,必須按照計算機的規(guī)定做事,必須按照計算機的規(guī)定做事,沒有你自己說話的權(quán)利!沒有你自己說話的權(quán)利! 從此,你將成為計算機的主宰者,從此,你將成為計算機的主宰者,駕御這匹可以騰飛的駿馬駕御這匹可以騰飛的駿馬,翱翔在無翱翔在無限的太空!限的太空!2022-3-7南京大學
2、出版社出版社4騰飛就從這里開始!2022-3-7南京大學出版社出版社5|為了更好地學習Visual Basic ,有必要重溫一下課程中的兩個重要概念:|(1) 計算機的系統(tǒng)結(jié)構(gòu);|(2) 計算機程序設(shè)計語言|通過復習了解: (1) 本課程在”計算機的系統(tǒng)”中的位置 (2) 程序設(shè)計語言Visual Basic的特點以及它與其它程序設(shè)計語言的關(guān)系2022-3-7南京大學出版社出版社6圖1-1 計算機系統(tǒng)結(jié)構(gòu)2022-3-7南京大學出版社出版社7|計算機程序設(shè)計語言的分類機器語言:機器語言:用二進制代碼表示計算機的指令系統(tǒng)-計算機可以直接執(zhí)行。匯編語言:匯編語言:用特殊符號表示計算機的指令系統(tǒng)-經(jīng)
3、過簡單匯編后,計算機可以直接執(zhí)行。高級語言:高級語言:接近于人類自然語言的程序設(shè)計語言,計算機不能直接執(zhí)行。必須經(jīng)過編譯(翻譯)才能執(zhí)行面向機器面向用戶2022-3-7南京大學出版社出版社8機器語言程序:01101110011000110110?程序運行結(jié)果匯編語言源程序MOV AH,BHINT 21H. ?目的程序0110111000110程序運行結(jié)果高級語言源程序:If x0 then Print x. ?目的程序0110111000110程序運行結(jié)果圖1-2 三類程序設(shè)計語言執(zhí)行過程比較2022-3-7南京大學出版社出版社9第一代BASIC:誕生在20世紀60年代初,是一種帶有行號的、非
4、結(jié)構(gòu)化、解釋型程序設(shè)計語言,它只有十幾條語句,被稱之為第一代BASIC。第二代BASIC采用結(jié)構(gòu)化編譯形式(不帶行號),其代表性產(chǎn)品有TrueBASIC、QuickBASIC等。第三代BASIC在Windows環(huán)境下運行,以嶄新的圖形用戶界面取代傳統(tǒng)的文本(TEXT)方式。特別是90年代初,微軟推出采用可視化程序設(shè)計界面的Visual Basic,并在短短幾年內(nèi)不斷地改進和完善,從1991年的1.0版本逐步升級到Visual Basic7.0版,使程序設(shè)計發(fā)生了深刻的變化。 2022-3-7南京大學出版社出版社10創(chuàng)建一個應(yīng)用程序,就象實施一項工程工程項目項目,又好象導演一臺大型的話劇。以下通
5、過一個實例介紹創(chuàng)建一個工程項目的全過程。 2022-3-7南京大學出版社出版社11【例1-1】按照下面要求設(shè)計一個“捉迷藏”游戲程序。圖1-3 捉迷藏”游戲校園里有操場、花園、樹林和涼亭四個地方,一位小朋友選擇某一個地方藏身(見圖1-3),請你猜一猜她藏在哪里,猜對了,她會自動現(xiàn)身,并顯示:“猜對了,你真棒!”,猜錯了,也會現(xiàn)身,顯示:“哈哈,猜錯了,我在這里!”。游戲可以多次進行,直到選擇退出為止。 2022-3-7南京大學出版社出版社12圖1-3 捉迷藏”游戲操場花園樹林涼亭2022-3-7南京大學出版社出版社13|第一步,構(gòu)建大舞臺(窗體界面)。第一步,構(gòu)建大舞臺(窗體界面)。和啟動其它
6、應(yīng)用程序一樣,啟動Visual Basic,就會出現(xiàn)一個戲劇“大舞臺”(VB中叫做“窗體”)??梢愿鶕?jù)需要方便地調(diào)整舞臺的大小。2022-3-7南京大學出版社出版社14步驟步驟2 舞臺布局舞臺布局 一臺戲的主要對象是演員,本劇中我們要請出以下對象(VB中稱為“控件”):(1) 圖片對象(Picture1),位于左上角,用來裝載小朋友的照片;(2) 標簽對象(Lable1),位于圖片對象的右面,用來顯示不同文字信息;游戲中的對話都可以使用標簽對象進行:開始時顯示:猜一猜我藏在哪里?猜對時顯示:“猜對了,你真棒!”猜錯時顯示:“哈哈,猜錯了,我在這里!”。2022-3-7南京大學出版社出版社15我
7、是圖片框,可以貼照片我是標簽框,可以登廣告我是命令按鈕,專門幫你下達命令操場樹林花園涼亭繼續(xù)退出2022-3-7南京大學出版社出版社16|(3) 四個藏身之處,使用命令按鈕組(Command1(0)、Command1(1)、Command1(2)、Command1 (3));|(4) 兩個用來控制游戲過程“繼續(xù)”和“退出”的兩個命令按鈕。|繪制這些“控件”十分方便,只要在VB“工具箱”中選定相應(yīng)工具,按照圖1-3的大小和布局,用通用的繪圖方法(拖動鼠標)在窗體中逐一繪制,讓8個對象各居一方,就完成了舞臺布局。|這里應(yīng)當特別說明:具有四個成員的命令按鈕組(Command1 (0)、(1)、(2)
8、、(3)的繪制方法與一般方法不同,只要繪制出第一個,然后使用“復制”、“粘貼”命令就可以依次得到其它三個按鈕。2022-3-7南京大學出版社出版社172022-3-7南京大學出版社出版社18|第三步,為演員化妝(設(shè)置對象的外部特征第三步,為演員化妝(設(shè)置對象的外部特征-控件控件屬性)。屬性)。|為了增加“藝術(shù)”效果,有必要為各位演員進行簡單化裝:|(1) 為圖片對象(Picture1)裝入“小朋友”圖片;|(2) 為標簽對象(Lable1)裝入初始標題(Caption)內(nèi)容:“猜一猜我在哪里?”并利用Font屬性定義文本的字體和字號;|(3)修改命令按鈕組中的四個按鈕(Command1(0)、
9、Command1(1)、Command1(2)、Command1(3))的標題(Caption)屬性分別為:操場、花園、樹林和涼亭(當然,進一步學習后,還可以分別為它們裝入漂亮的圖片),并選擇合適的字體和字號;|(4) 修改兩個控制按鈕的標題屬性(Caption)分別為“繼續(xù)”和“退出”,選擇合適的字體和字號。 2022-3-7南京大學出版社出版社19|第四步,程序設(shè)計。第四步,程序設(shè)計。這是關(guān)鍵性的步驟,用來為各位“演員”(對象)設(shè)置“動作”和“臺詞”:|(1)為了在單擊“退出”按鈕時會結(jié)束程序運行,必須為“退出”按鈕的“單擊”事件編寫“控制程序結(jié)束運行(End)”的代碼,具體方法是:|雙擊
10、“退出”命令按鈕,在隨之出現(xiàn)的代碼窗口中會自動出現(xiàn)以下專用模塊代碼:|Private Sub Command3_Click()|End Sub|在Private Sub和End Sub之間,填入程序:End2022-3-7南京大學出版社出版社20|(2) 在命令按鈕組的“單擊”事件代碼段中輸入程序代碼(這里不要求大家理解程序內(nèi)容,只要求學會在Sub和End Sub之間填入程序代碼的方法-可以將以下代碼段粘貼到Private Sub和End Sub之間):|Private Sub Command1_Click(Index As Integer)|Randomize 設(shè)置隨機函數(shù)狀態(tài)(隨機種子)|
11、a = Int(4 * Rnd) 隨機抽取一個0-3之間的整數(shù)a|If a = Index Then 如果a恰好是你單擊命令按鈕的編號| Label1.Caption = 猜對了,你真棒!|Else| Label1.Caption = 哈哈,猜錯了,我在這里!|End If|Command1(0).Enabled = False 猜完后,讓四個|Command1(1).Enabled = False 場所按鈕無效|Command1(2).Enabled = False|Command1(3).Enabled = False |Command1(a).DisabledPicture = Load
12、Picture(小人.gif)| 小朋友在第a個“場所”現(xiàn)身|End Sub2022-3-7南京大學出版社出版社21|(3) 為“繼續(xù)”命令按鈕的“單擊”事件填寫程序|Private Sub Command2_Click()|Label1.Caption = 我換一個地方,你重新猜!|Command1(a).DisabledPicture = LoadPicture()|Command1(0i).Enabled = True 讓四個場所按鈕有效|Command1(1).Enabled = True|Command1(2).Enabled = True|Command1(3).Enabled =
13、 True|End Sub2022-3-7南京大學出版社出版社22|第五步,程序調(diào)試和運行(預(yù)演排練):第五步,程序調(diào)試和運行(預(yù)演排練):|經(jīng)過以上幾個步驟,一臺絕妙好戲已經(jīng)出籠,但能不能得到預(yù)想的效果,還需要進行“預(yù)演排練”(VB中稱為程序調(diào)試)。在調(diào)試過程中可以發(fā)現(xiàn)問題和不足之處,一邊調(diào)試,一邊修改。|使用運行菜單中的“啟動”命令或單擊工具欄中的“啟動”按鈕(也可以直接使用功能鍵F5),啟動當前工程。這時會發(fā)現(xiàn)以下幾個沒有預(yù)料到的問題,我們可以逐一解決。|(1)當單擊所猜的藏身之處后,小朋友不現(xiàn)身,為什么?|原因是:要想使四個藏身之處(按鈕組0、1、2、3)可以顯示圖形,必須將它們的“S
14、tyle”屬性均設(shè)置成圖形模式:“1-Graphical”。2022-3-7南京大學出版社出版社23|(2)單擊“繼續(xù)”后,原來顯示的“藏身之處”仍然顯示圖象,即清除圖象命令“Command1(a).DisabledPicture = LoadPicture()”不起作用,為什么?|問題出在變量a的有效范圍上,必須在所有模塊之前(通用模塊)定義變量a:“Dim a As Integer”使變量a全程有效。|經(jīng)過以上調(diào)試,初步達到預(yù)先設(shè)計的效果。 2022-3-7南京大學出版社出版社24|第六步,程序編譯,生成可執(zhí)行文件第六步,程序編譯,生成可執(zhí)行文件(建立影片拷貝)。(建立影片拷貝)。|經(jīng)過前
15、4個步驟,可以使用文件菜單中的“保存”命令,保存工程項目。經(jīng)過保存的項目將會生成一系列文件,本例中將生成一個項目文件(.vbp)和一個窗體文件(.frm),如果需要,只要打開項目文件就可以隨時打開這個工程,進一步修改工程文件。|如果要將程序提交給最終用戶,可以使用文件菜單中的“生成工程1.exe”菜單命令,對源程序進行“編譯”,生成一個可執(zhí)行文件(.exe)提供給用戶。2022-3-7南京大學出版社出版社25|我們已經(jīng)成功地設(shè)計了一個有趣的小程序,現(xiàn)在可以歸納一下設(shè)計的全過程,如圖1-4。窗體窗體調(diào)整調(diào)整構(gòu)建構(gòu)建舞臺舞臺繪制繪制控件控件舞臺舞臺布局布局設(shè)置設(shè)置屬性屬性演員演員化妝化妝程序程序設(shè)
16、計設(shè)計劇情劇情排練排練程序程序調(diào)試調(diào)試預(yù)演預(yù)演排練排練程序程序編譯編譯影片影片拷貝拷貝圖圖1-4 建立建立VB工程項目步驟工程項目步驟2022-3-7南京大學出版社出版社26|1.2.2 程序流程圖程序流程圖|一個稍微復雜的項目,都要先設(shè)計一個實施流程圖,利用流程圖便可以一步一步有條不紊地完成程序設(shè)計。實施流程圖的主要部分是程序功能的實現(xiàn)流程。|例如,【例1-1】中,按照題目的要求和VB的特點,我們把程序所要實現(xiàn)的功能用流程圖直觀的表示出來(圖1-5),參照流程圖進行程序代碼的設(shè)計就會容易得多。我們建議讀者參照流程圖重新閱讀【例1-1】中的程序代碼,一定會有不小的收獲。2022-3-7南京大學
17、出版社出版社27是否開 始小朋友躲藏在一個地方(a)顯示:猜一猜,我藏在哪里?猜者單擊所猜的藏身之處(Index)a=Index?顯示:猜對了,你真棒!顯示:哈哈,猜錯了,我在這里!設(shè)置四個藏身之處“無效”繼續(xù)/退出?設(shè)置四個藏身之處“有效”顯示:我換一個地方,你重新猜!結(jié) 束繼續(xù)退出圖1-5 “捉迷藏”程序代碼功能流程圖2022-3-7南京大學出版社出版社28|程序流程圖所使用的符號,沒有嚴格地規(guī)定。一般以直觀、通用為原則。如許多人習慣使用“菱形框”來表示“邏輯判斷”的兩種不同結(jié)果,用矩形框表示一般計算等問題的處理,用帶有箭頭的線段表示程序的流向等。2022-3-7南京大學出版社出版社29|
18、1.2.3 了解了解VB工作環(huán)境工作環(huán)境|1 進入進入VB的工作環(huán)境的工作環(huán)境|使用“開始”“程序”“Microsoft Visual Basic 6.0”,打開“新建工程”對話框(圖1-6),在對話框中可以進行“新建”、“現(xiàn)存”和“最新”三類選擇。圖圖1-6 新建工程對話框新建工程對話框圖1-6 新建工程對話框2022-3-7南京大學出版社出版社30|“新建”,用來開始新建一個VB工程,打開后,會出現(xiàn)一個空白的窗體,以便按照用戶的意愿,繪制所需要的控件。|“現(xiàn)存”,打開VB默認存放文件的文件夾“VB98”,以便選擇一個已經(jīng)建立的工程,進行修改或運行。當然,用戶也可以打開自己使用的文件夾,用來
19、選擇現(xiàn)存的工程文件。選定文件并單擊“打開”按鈕后,系統(tǒng)會自動將工程文件個與這個工程相關(guān)的文件裝入內(nèi)存。|“最新”選項,便于用戶打開“最近”一次建立的工程文件。這個功能對于連續(xù)編輯和修改一個工程的用戶,特別方便。 2022-3-7南京大學出版社出版社31|圖1-7 VB的工作界面工作窗體工具箱屬性窗口工程資源管理器。無論選擇哪一種方式打開工程文件,都會進入標準的VB的工作界面,圖1-7就是“新建”工程的工作界面。圖1-7 VB的工作界面工作窗體工具箱屬性窗口工程資源管理器2022-3-7南京大學出版社出版社32|2 VB的工作界面的工作界面|下面我們就以“新建”“標準EXE”工程為例,介紹VB的
20、工作界面。|在VB工作窗口界面中,除了具備普通窗口的工作欄區(qū)(如標題欄、菜單欄、工具欄等)之外,還具有以下特殊欄區(qū)。|(1)工作窗體|工作窗體區(qū)是程序設(shè)計用戶主要的工作區(qū)域,類似于一個大舞臺。用戶繪制控件對象和輸入程序代碼工作都在這個區(qū)域中進行。比如【例1-1】中繪制圖片控件、標簽控件和命令按鈕(組)都是在該區(qū)域中的對象窗口中完成的,輸入控件對象的控制代碼則是在該區(qū)域的代碼窗口中進行的。|可以使用“視圖”菜單中的“代碼窗口/對象窗口”命令或“工程資源管理器”上方的“查看代碼/查看對象”按鈕方便地完成兩個窗口的切換,也可以在對象窗口中雙擊選定的對象切換到代碼窗口。2022-3-7南京大學出版社出
21、版社33|(2)工具欄|和Windows傳統(tǒng)工作窗口一樣,VB在欄中設(shè)置了一些常用工具按鈕(圖1-8)。圖1-8 VB的常用工具欄在常用工具欄的右側(cè)有一些VB中特有的工具按鈕,如,“運行程序”按鈕,可以快速啟動程序的運行,“工程管理器”、“屬性窗口”可以用來顯示或關(guān)閉工程管理器、屬性窗口工作區(qū),“窗體布局”按鈕則用來顯示窗體的整體布局視圖。2022-3-7南京大學出版社出版社34|(3)工具箱|VB除了在常用工具欄中列出部分常用工具按鈕外,還設(shè)置了一個特殊的“工具箱”,用來提供繪制各種常用控件的工具(圖1-9)。例如【例1-1】中的“圖片”、“標簽”和“命令按鈕(組)”等控件都是利用控件工具繪
22、制的。如果需要,也可以向工具箱中添加其它的控件工具。|繪制控件可以用兩種方式完成,一是單擊工具箱中的工具,將光標移到對象窗口中,“拖動”鼠標繪制。用這種方法繪制控件的位置和大小都由用戶“拖動”鼠標的起點和拖動距離決定。第二種指針:選擇對象圖片框:顯示圖片的控件標簽:顯示文字文本框:用于輸入和顯示文本框架:容納一組控件命令按鈕:繪制各種操作按鈕復選框:繪制多選按鈕單選按鈕:繪制多選按鈕組合框:繪制一組選擇條目列表框:顯示和選擇多個條目水平滾動條:繪制水平滾動條垂直滾動條:繪制垂直滾動條定時器:繪制時間控制控件驅(qū)動器列表框:顯示選擇驅(qū)動器目錄列表框:顯示和選擇目錄文件列表框:顯示和選擇文件形狀控件
23、:繪制圖形直線控件:在窗體上繪制直線圖象控件:顯示圖片數(shù)據(jù)控件:綁定數(shù)據(jù)庫表容器:用于調(diào)用其它程序圖1-9 工具箱中常用的工具方法是直接雙擊工具箱中的控件工具,控件將自動繪制在對象窗口中央,用戶可以按照自己的意愿改變它的位置和大小。2022-3-7南京大學出版社出版社35指針:選擇對象圖片框:顯示圖片的控件標簽:顯示文字文本框:用于輸入和顯示文本框架:容納一組控件命令按鈕:繪制各種操作按鈕復選框:繪制多選按鈕單選按鈕:繪制多選按鈕組合框:繪制一組選擇條目列表框:顯示和選擇多個條目水平滾動條:繪制水平滾動條 垂直滾動條:繪制垂直滾動條定時器:繪制時間控制控件驅(qū)動器列表框:顯示選擇驅(qū)動器目錄列表框
24、:顯示和選擇目錄 文件列表框:顯示和選擇文件形狀控件:繪制圖形直線控件:在窗體上繪制直線圖象控件:顯示圖片數(shù)據(jù)控件:綁定數(shù)據(jù)庫表容器:用于調(diào)用其它程序圖1-9 工具箱中常用的工具2022-3-7南京大學出版社出版社36|(4)工程資源管理器|一個項目往往包含多個窗體控件和程序模塊,為了便于用戶了解工程整體結(jié)構(gòu)和選擇編輯對象,VB專門設(shè)置一個工程資源管理器。和Windows資源管理器類似,工程資源管理器以樹型結(jié)構(gòu)來管理當前工程的所有資源,讀者可以象使用Windows資源管理器的方法一樣來使用VB工程資源管理器,所不同的是:當我們在資源管理器中選定一個對象時,VB將在工作窗體中顯示這個對象。|(5
25、)屬性窗口|屬性窗口是VB工作環(huán)境中的一個重要窗口,它的作用是為選定的控件對象定義外觀、狀態(tài)等特征(VB中稱為“屬性”)。|在工作窗體中選定一個控件對象(包括窗體本身),在屬性窗口中將會出現(xiàn)該控件的所有屬性列表,選中一個屬性列表項,在屬性窗口下方會顯示關(guān)于這個屬性的簡單說明。這時,用戶可以按照自己的需要選擇或改變控件的原始屬性值。 2022-3-7南京大學出版社出版社37|許多屬性除了可以使用上述手工方法定義或改變屬性值外,還可以在程序運行過程中改變。例如【例1-1】中,下列語句的作用都是改變指定控件的屬性。|If a = Index Then | Label1.Caption = 猜對了,你
26、真棒!|Else| Label1.Caption = 哈哈,猜錯了,我在這里!|End If|這一段代碼的作用是如果猜中了,則把Label1控件的Caption屬性設(shè)置成猜對了,你真棒!,否則把Label1控件的Caption屬性設(shè)置成哈哈,猜錯了,我在這里!。 2022-3-7南京大學出版社出版社38|以下四個屬性設(shè)置語句的作用是當猜了一次之后,立即把四個藏身之處的“有效屬性(Enabled)”設(shè)置成“無效”。|Command1(0).Enabled = False |Command1(1).Enabled = False |Command1(2).Enabled = False|Comma
27、nd1(3).Enabled = False |讀者還可以在【例1-1】中找出許多在運行過程中定義或改變屬性值的例子。|同樣,在【例1-1】中,利用屬性窗口直接設(shè)置控件屬性的例子也不少:|在圖片對象(Picture1)的Picture屬性中裝入“小朋友”圖片; 2022-3-7南京大學出版社出版社39|為標簽對象(Lable1)裝入初始標題(Caption)內(nèi)容:“猜一猜我在哪里?”并利用Font屬性定義文本的字體和字號;|修改命令按鈕組中的四個按鈕(Command(0)、Command(1)、Command(2)、Command(3))的標題(Caption)屬性:分別為:操場、花園、樹林和
28、涼亭,并選擇合適的字體和字號;|修改兩個控制按鈕的標題屬性(Caption)分別為“繼續(xù)”和“退出”,選擇合適的字體和字號。|?|建議讀者自己列出【例1-1】中其它利用屬性窗口直接設(shè)置控件屬性的所有例子。2022-3-7南京大學出版社出版社40|下面再介紹許多控件幾個共有的常用屬性。|用來控制控件大小的屬性有Height(高度)和Width(寬度),它們的屬性值都是整型數(shù),單位為象素個數(shù)。TopHeightWidthLeft圖1-10 控件大小和位置屬性示意圖|用來規(guī)定控件對象位置的屬性有Left(左坐標)和Top(頂坐標),分別表示控件左上角到所在窗體左、上邊緣的象素數(shù)(圖1-10)。|有時
29、要控制控件的可見性,可以使用Visible屬性,屬性值為True時可見, false為不可見。TopHeightWidthLeft圖1-10 控件大小和位置屬性示意圖2022-3-7南京大學出版社出版社41|使用程序代碼設(shè)置屬性的格式是: |對象名對象名.屬性名屬性名=屬性值屬性值|除了以上常用窗口之外,有時還需要調(diào)出其它一些窗口,可以在“視圖”菜單中選擇使用。比較常用的如立即窗口和窗體布局窗口等。|(5)立即窗口|有時要想直接使用一些命令,讓VB立即顯示處理結(jié)果,可以在立即窗口中完成,例如,在立即窗口中輸入“?10*16+5”,回車后立即顯示計算的結(jié)果:165。|(6)窗體布局窗口|如果想了
30、解工程項目的整體布局,則可以使用窗體布局窗口。2022-3-7南京大學出版社出版社42|1.2.4 繪制工作界面繪制工作界面|我們已經(jīng)了解VB的工作界面,認識了常用控件工具,并且學會控件屬性的設(shè)置方法,可以開始自己動手完成一項工程的設(shè)計了。圖圖1-11 添加控件添加控件|新建或修改一個項目,首先要繪制或修改工作界面,下面我們先來練習修改一個工程。|【例1-2】打開【例1-1】的“捉迷藏”工程,為小朋友添加兩個新的藏身之處:體育館和大學生俱樂部(圖1-11)。 2022-3-7南京大學出版社出版社43圖1-11 添加控件2022-3-7南京大學出版社出版社44|步驟如下:|(1)打開“捉迷藏”工
31、程;|(2)修改原來的窗口布局:改變原來的四個藏身之處的大小和位置;|(3)為命令按鈕組增加兩個新成員:Command1(4)、Command1(5);|(4)修改Command1(4)、Command1(5)的Caption屬性值為“體育館”和“大學生俱樂部”,定義適當字體大??;|(5)回憶在【例1-1】調(diào)試過程中發(fā)現(xiàn)的問題(當單擊所猜的藏身之處后,小朋友不現(xiàn)身),我們也要將新成員 “Style”屬性設(shè)置成圖形模式:“1-Graphical”。|完成了上述界面設(shè)計后,啟動工程試試看。將會發(fā)現(xiàn),小朋友始終不會光顧這兩個新區(qū)域,按鈕“無效”控制功能對兩個新成員都不起作用,為什么呢?|原來,我們還
32、沒有修改“控制代碼”。下面來補上這個環(huán)節(jié)。 2022-3-7南京大學出版社出版社45|1.2.5 程序代碼的設(shè)計輸入程序代碼的設(shè)計輸入|我們已經(jīng)看出,完成工作界面的設(shè)計只是完成了舞臺布局,要想讓“演員”按照“劇本”的規(guī)劃動起來,為每一個控件設(shè)計程序代碼是關(guān)鍵。本課程的主要任務(wù)之一是學習如何設(shè)計程序代碼,我們這里僅介紹程序代碼的一些常規(guī)輸入方法和技巧。|VB的程序代碼是文本型代碼,可以在任何文本編輯器中編輯成功后復制到VB代碼窗口中,也可以直接在VB代碼窗口編輯。|在VB代碼窗口中編輯程序代碼時,系統(tǒng)會對輸入的代碼進行語法檢查,當輸入的代碼包含語法錯誤時,系統(tǒng)會拒絕接收(顯示紅色警告),并自動指
33、出錯誤的位置和類型。在某一些場合,系統(tǒng)會出現(xiàn)下拉列表供用戶選擇,省去逐個輸入字符之苦,例如,當要為命令按鈕2的Caption賦一個新值時,當準確地輸入“Command2.”時,系統(tǒng)知道你要為Command2定義某種屬性,會自動列出所有屬性名供你選擇,如果你記住了屬性的第一個字母,輸入字符C時,系統(tǒng)會將所有以C開頭的屬性名列出,使選擇更為方便。2022-3-7南京大學出版社出版社46|下面我們來補充【例1-2】中的程序代碼,必須修改和補充的代碼有以下幾個地方:|(1)供選擇的范圍增大了,由原來的03變?yōu)?5,因此要把原來的賦值語句“a = Int(4 * Rnd)”中的4改為8(第2章我們將詳細
34、介紹隨機函數(shù)Rnd的使用方法)。|(2)在Command1(0).Enabled = False| |Command1(3).Enabled = False|后增加兩個語句:|Command1(4).Enabled = False|Command1(5).Enabled = False|類似地,在Private Sub Command2_Click()-End Sub中的|Command1(0).Enabled = True| |Command1(3).Enabled = True|后增加兩個語句:|Command1(4).Enabled = True|Command1(5).Enabled
35、= True2022-3-7南京大學出版社出版社47|愛思考的讀者將會說,太麻煩了,要是設(shè)置10個藏身之處,是不是要把類似的語句寫上10遍呢?不,在以后學習了循環(huán)語句后,再多的類似語句只要寫一遍就行了。|至此,我們已經(jīng)將程序修改完畢,再運行一次將會怎樣? 2022-3-7南京大學出版社出版社48|1.2.6 程序調(diào)試與運行程序調(diào)試與運行|在【例1-1】中我們已經(jīng)使用了VB的程序調(diào)試方法,并在調(diào)試過程中針對發(fā)現(xiàn)的問題作了修改。|啟動工程調(diào)試的方法有以下幾種:|(1)使用運行菜單中的“啟動”命令;|(2)單擊工具欄中的“啟動”按鈕;|(3)直接使用功能鍵F5。|VB的程序調(diào)試是使用VB的解釋系統(tǒng)對
36、程序代碼進行邊解釋邊執(zhí)行,在調(diào)試過程中發(fā)現(xiàn)并糾正錯誤。 2022-3-7南京大學出版社出版社49|“百密總有一疏”,無論怎樣經(jīng)驗豐富的程序設(shè)計師也不能保證自己設(shè)計的程序會“絕對正確”,因此,及時地發(fā)現(xiàn)錯誤并進行糾正是程序調(diào)試的主要任務(wù)。程序設(shè)計中的錯誤一般有兩種類型,一是語法錯誤,二是語義錯誤。前者是不符合VB語言語法規(guī)定所犯的錯誤,這種錯誤在調(diào)試過程中一般都能被解釋系統(tǒng)發(fā)現(xiàn)。而后者則經(jīng)常是因人對任務(wù)的理解不足而發(fā)生的錯誤,解釋系統(tǒng)不能發(fā)現(xiàn),必須靠調(diào)試者的經(jīng)驗、才智和細心來發(fā)現(xiàn)并糾正。比如,【例1-1】中調(diào)試過程中發(fā)現(xiàn)的兩個錯誤就屬于語義錯誤。|在VB中還有更多的調(diào)試方法和技巧,我們將在以后的
37、章節(jié)中做系統(tǒng)介紹。2022-3-7南京大學出版社出版社50|1.2.7 程序編譯與發(fā)行程序編譯與發(fā)行|在【例1-1】中經(jīng)過前4個步驟,可以使用文件菜單中的“保存”命令,保存工程項目。經(jīng)過保存的項目將會生成一系列文件,本例中將生成一個項目文件(.vbp)和一個窗體文件(.frm),如果需要,只要打開項目文件(用鼠標雙擊)就可以隨時打開這個工程,進一步修改工程文件。|如果要將程序提交給最終用戶,可以使用文件菜單中的“生成工程1.exe”菜單命令,對源程序進行“編譯”,生成一個可執(zhí)行文件(.exe)提供給用戶。2022-3-7南京大學出版社出版社51|1.3 對象、屬性與事件驅(qū)動編程方式對象、屬性與
38、事件驅(qū)動編程方式|傳統(tǒng)的編程方法是面向處理問題的過程、按程序書寫順序執(zhí)行的機制。其缺點是程序員始終要關(guān)心什么時候會發(fā)生什么事情,因此處理Windows環(huán)境下的事件驅(qū)動方式的工作量太大。|VB采用的是面向?qū)ο?、事件?qū)動的編程機制,程序員只需要編寫響應(yīng)用戶動作的程序,而不必考慮判斷何時以及如何會發(fā)生這些事件的細節(jié),因此編寫的代碼要少得多。2022-3-7南京大學出版社出版社52|131 對象及其屬性對象及其屬性|何謂對象?圖圖1-12 手指頂壓氣手指頂壓氣球球|在現(xiàn)實世界中,一個人、一本書、一個氣球、一張桌子乃至地球、宇宙都可以視為一個對象。每一個對象都有一定的大小、形狀,并具有一定的外部特征,我們稱之為對象的“屬性”。除此之外,所有的對象都能“感知”外界發(fā)生的事件。在外力的作用下某些屬性會發(fā)生變化,并會產(chǎn)生某種行為或動作。比如,氣球?qū)ο螅▓D1-12)具有一定大小、形狀和顏色,當外部溫度發(fā)生變化時,它會隨之膨脹或縮小,用手指頂壓氣球,相應(yīng)的部位會出現(xiàn)凹坑,放松系線,氣球就會升起,。圖1-12 手指頂壓氣球2022-3-7南京大學
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 3方入股合同范例
- 獸醫(yī)聘用勞動合同樣本
- 東營市勞動合同范例
- 關(guān)節(jié)置換采購合同標準文本
- 個人房產(chǎn)過戶合同范例
- 共還合同范例
- 充電樁轉(zhuǎn)賣合同范例
- 兼職職工合同范例
- 買賣地定金合同范例
- 企業(yè)轉(zhuǎn)讓商鋪合同范例
- 2024年四川西南石油大學招聘事業(yè)編制輔導員考試真題
- 2025年寧夏吳忠紅寺堡區(qū)公開招聘社區(qū)工作者46人筆試備考題庫及答案解析
- 表型組學技術(shù)助力作物育種效率提升
- 2025年全民營養(yǎng)周科學實現(xiàn)吃動平衡健康中國營養(yǎng)先行課件
- 非標自動化設(shè)備設(shè)計培訓
- 西部計劃共基試題及答案
- 金融數(shù)學考試及答案
- 食品運輸過程安全管理措施
- 保潔態(tài)度類培訓
- 2024屆高考專題復習北京高考模擬考《論語》試題
- 醫(yī)院基建工作流程
評論
0/150
提交評論