VisualBasic6.0程序設計教程_第1頁
VisualBasic6.0程序設計教程_第2頁
VisualBasic6.0程序設計教程_第3頁
VisualBasic6.0程序設計教程_第4頁
VisualBasic6.0程序設計教程_第5頁
已閱讀5頁,還剩281頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、visualbasic6.0程序設計教程第一章visual basic 程序設計概述主要內容l 窗體(form)窗口 l 屬性(properties)窗口l 工程資源管理器(project explorer)窗口(代碼查看、查看對象、切換文件夾按鈕)l 代碼(code)窗口 l 立即(immediate)窗口 l 窗體布局(form layout)窗口l 工具箱(toolbox)窗口l 工具欄的定制 l 用戶自定義常用控件的名稱前綴和默認名稱什么是visual basicvisual basic 6.0中文版是一種應用程序開發(fā)工具,它的功能就是用來編程編制適合在windows95/98/nt操

2、作系統(tǒng)下的應用程序。首先是”visual”,”visual”一詞在辭典上的含義是”看的、視覺的、用于看的 ”,引伸到計算機程序設計領域中就變?yōu)椤笨梢暬某绦蛟O計”,microsoft公司的其他冠以visual的產品也都含有這個意思。何謂”可視化程序設計”?它指的是一種開發(fā)圖形用戶界面的方法,使用這種方法,程序員不須編寫大量代碼去描述界面元素的外觀和位置,只要把預先建立的界面元素用鼠標拖放到屏幕上適當的位置即可。visual basic是在原有basic語言的基礎上進一步發(fā),至今包含了數百條語句、函數及關鍵詞,其中很多和windows guie直接關系。專業(yè)人員可以用visual basic實現(xiàn)

3、其他任何windows編程語言的功能,而初學者只要掌握 幾個關鍵詞就可以建立實用的應用程序。所以,visual basic 這兩個單詞連在一起,就可以從中得到關于它的一個簡單的概念使用basic語言進行可視化程序開發(fā)的工具。 1.1 vb的功能特點1.1.1 引例運行myvb夾中的vb1ex1_1lbc01_1.vbp程序代碼:dim step1 as integerdim step2 as integerpublic sub center() 將標簽控件移到窗體中央label1.top = (form1.height - label1.height) / 2label1.left = (fo

4、rm1.width - label1.width) / 2label1.move label1.left, label1.topend subpublic sub mymoveleftright() 左右移動過程label1.move label1.left + 50 * step2, label1.topif label1.left form1.width thenstep2 = -1elseif label1.left form1.height then 到達窗體底部step1 = -1elseif label1.top 0 then到達窗體頂部step1 = 1end ifend sub

5、private sub cmdauto_click() 上下自動按鈕timer1.interval = 200 0.2秒激活執(zhí)行一次過程mymove(上下移動)timer2.interval = 0 撤銷左右自動移動call centerend subprivate sub cmdhand_click() 手動按鈕timer1.interval = 0 撤銷上下自動移動timer2.interval = 0 撤銷左右自動移動call mymove 執(zhí)行手動移動程end subprivate sub cmdleferight_click() 左右自動按鈕timer2.interval = 200

6、 0.2秒激活執(zhí)行一次過程左右移動過程timer1.interval = 0 撤銷上下自動移動過程call centerend subprivate sub form_load()step1 = 1timer1.interval = 0step2 = 1cmdleferight.tabindex = 0 設置焦點在命令控件cmdleferightform1.picture = loadpicture(club01.jpg)end subprivate sub timer1_timer() 定時器1事件call mymove 調用上下移動過程end subprivate sub timer2_t

7、imer()定時器2事件call mymoveleftright 調用左右移動過程end sub引例2 燈光字體閃爍運行myvb夾中的vb1ex1_2lbc1_2.vbpprivate sub form_load()image2.left = image1.leftimage2.top = image1.topimage2.height = image1.heightimage2.width = image1.widthend subprivate sub timer1_timer()image2.visible = not image2.visibleform1.caption = 燈光閃爍

8、 + date$ + + time$ label1.forecolor = rgb(500 * rnd, 500 * rnd, 500 * rnd) 框架字體變色顯示end sub1.1.2 vb功能和特點1具有面向對象的可視化設計工具在vb中,應用面向對象的程序設計的方法(object oriented programming),把程序和數據封裝起來視為一個對象,每個對象都是可視的。程序員在設計時只需要用現(xiàn)有的工具根據界面設計的要求,直接在屏幕上“畫出”窗口、菜單、命令按鈕等不同類型的對象,并為每個對象設置屬性。程序員的編程工作僅編寫針對對象要完成的事件過程的代碼。術語:對象:對象是vb程序

9、的組件,如控件、窗體或一段包含編程語句的代碼模塊。在vb中對象分全局使用對象和用戶界面對象。全局使用對象有:app(應用程序)、clipborad(剪貼板)、dubeg(調試窗口)、printer(打印機)、screen(屏幕)。用戶界面對象有:form(窗體)、mdiform(多文檔窗體)、control(控件).屬性: 能夠區(qū)分控件是因為屬性決定了控件的外觀和行為。屬性是有值的,例如顏色、文本標簽、大小和在窗體的中的位置。在窗體中放置控件時,可以設置它的屬性使其有別用其他控件。form窗體: 也稱窗口,它由vb程序屏幕的背景和命令按鈕、滾動條等組件組成。根據程序的性質和復雜程度程度的不同,

10、程序中可能包括一個或多個窗體。2事件驅動的編程機制傳統(tǒng)的編程方式是一種面向過程,按程序事先設計的流程運行。但在圖形用戶界面的應用程序中,用戶的動作即事件掌握著程序的流程。事件#1 事件#2 事件#3事件#4 事件#5 windows 捕獲事件 windows事件#1 事件#2 事件#3應用程序#1 應用程序#2術語:事件:事件是在程序執(zhí)行時所發(fā)生的活動,例如,單擊鼠標或擊鍵。事件驅動編程用于編寫響應windows事件的程序。為事件編寫代碼后,在程序運行期間,當該事件發(fā)生時程序就響應。如果沒有為某個事件編寫代碼,則當其發(fā)生的時候,程序對windows傳送給它的該事件不做響應。3提供了易學易用的應

11、用程序集成開發(fā)環(huán)境在vb集成開發(fā)環(huán)境中,用戶可設計界面、編寫代碼、調試程序,把應用程序編譯成可執(zhí)行文件,直至把應用程序制成安裝盤,以便能夠在脫離vb系統(tǒng)的windows環(huán)境中運行,為用戶提供了友好的開發(fā)環(huán)境。術語代碼:代碼是程序指令集合的另一種稱呼。4結構化的程序設計語言vb具有豐富的數據類型、眾多的內部函數、模塊化的、結構化的程序設計語言,結構清晰,簡單易學。5強大的數據庫功能vb中利用數據控件可以訪問多種數據庫系統(tǒng),如microsoft access、btreve、dbase、microsoft foxpro和paradox等,也可訪問microsoft excel、lotus1-2-3等

12、多種電子表格。vb6.0新增了功能強大、使用方便的ado(active database object)技術。ado包括了現(xiàn)有的odbc,而且占用內存少,訪問速度更快。同時提供的ado控件,不但可以用最少的代碼創(chuàng)建數據庫應用程序,也可以取代data 和rdo控件。支持多種數據庫系統(tǒng)的訪問。6active技術active技術發(fā)展了原有的ole技術,它使開發(fā)人員擺脫了特定語言的束縛,方便地使用其它應用程序提供的功能。使用vb能夠開發(fā)集聲音、圖像、動畫、字處理、電子表格、web等對象與一體的應用程序。術語ole: 代表object linking and embedding。許多windows應用以

13、ole對象的形式提供他們的數據,可以在其他支持ole的應用程序中嵌入這些對象。activx技術將很快代替ole技術,事實上,microsoft稱activex控件為“以前的ole控件”。7網絡功能vb6.0最重要的新特性之一,是提供了dhtml(dynamic html)設計工具。這種技術可以使web頁面設計者動態(tài)的創(chuàng)建和編輯頁面,使用戶在vb中開發(fā)多功能的網絡應用軟件。8多個應用程序向導(application wizard)vb的應用程序向導可以自動創(chuàng)建不同類型、不同功能的應用程序。有應用程序向導、安裝向導、數據對象向導、數據窗體向導、iis應用程序和dhtml等。術語向導:一步步地提出問

14、題并提示你做出響應。根據問題的答案,向導生成一個符合指定標準的應用程序。vb提供許多向導,但最常用的是應用程序向導。9完備的help聯(lián)機幫助功能在vb中,利用幫助菜單和f1功能鍵,用戶可隨時方便地得到所需的幫助信息;vb幫助窗口中顯示了有關的示例代碼,通過復制、粘貼操作可獲取大量的示例代碼,為用戶的學習和使用提供了捷徑。1.2 vb 的安裝和啟動1.2.1 安裝1. 系統(tǒng)要求vb6.0是windows 9x以上或windowsnt下的一個應用程序,對軟、硬件沒有特殊要求,只要能運行windows 9x以上或windowsnt就可安裝運行vb6.0。vb6.0右三種版本,即學習版、專業(yè)版和企業(yè)版

15、。企業(yè)版功能最全。專業(yè)版包括了學習班了學習版的功能。2. 安裝1.1.2 啟動單擊“開始”按鈕選擇“程序”菜單,單擊“microsoft visual basic 6.0中文版”程序,就可啟動vb6.0了。在“新建工程”窗口中三個選項卡:“新建”、“現(xiàn)存”和“最新”。單擊“新建”選項卡中的“標準 exe”圖標即可進入建立應用程序環(huán)境。在“新建”選項卡下,可建立新工程。在“現(xiàn)存”選項卡中可選擇打開現(xiàn)有工程。在“最新”選項卡中列出了最近使用過的工程。術語標準exestandard exe應用程序是可以編譯或解釋執(zhí)行的應用程序。工程工程(project)是構成應用程序所有文件的集合。單個的應用程序可

16、能由許多文件組成,而工程是這些文件的集合。其中一些文件包含代碼,一些文件包含各窗體中屏幕的描述,另一些包括高級的編程信息,這些信息用于同操作系統(tǒng)中的其他程序的模塊進行通信。1.3 集成開發(fā)環(huán)境1. 標題欄標題欄中的標題為“工程1-microsoft visual baisc設計“此時的集成開發(fā)環(huán)境處于設計模式。在進入其他狀態(tài)時,方括號中的文字將作相應的變化。vb由三種工作模式:設計模式:可編輯代碼,可編輯界面。運行模式:不可編輯代碼、不可編輯界面。中斷模式:可編輯代碼,但不可編輯界面。單擊“啟動”按鈕可繼續(xù)運行;單擊“結束”按鈕停止程序運行。2. 菜單欄(1) 文件(file)(2) 編輯(e

17、dit)(3) 視圖(view)(4) 工程(project)(5) 格式(format)(6) 調試(debug)(7) 運行(run)(8) 查詢(query)(9) 圖表(diagram)(10) 工具(tools)(11) 外接程序(add-ins)(12) 窗口(windows)(13) 幫助(help)3. 工具欄1.3.1 窗體(form)窗口啟動:單擊“視圖”菜單,單記“對象窗口” 或alt+v再按b鍵窗體是建立vb應用程序的主要部分,用戶通過與窗體上的控件部件交互可得到結果。一個應用程序至少有一個窗體,用戶可在應用程序中擁有多個窗體。除了一般窗體外,還有一種mdi(multi

18、ple document interface)多文檔窗體。它可以包含子窗體,每個子窗體都是獨立的。窗體的默認名form1,form2,。如果用戶自己給窗體命名一般在名字前加前綴frm(建議,以便識別對象)。介紹vb中的長度單位twip(緹)twip是屏幕度量的單位。可以認為twip就是屏幕上的一個點,但不同的屏幕和顯示卡支持不同的分辨率,也就是有不同數目的點。twip是與分辨率無關的單位,它對應的是想象的屏幕上的極小的點(比最高分辨率時的點還要?。?。因此,將窗體設置為7400twip時,窗體并不需要7400個屏幕點(像素)。設置窗體窗口的尺寸和位置時,注意在工具欄右邊顯示的位置座標和尺寸。這些

19、值是成對出現(xiàn)的。第一對值代表窗體位置,其中的第一個值時窗體距屏幕左側的twip數,第二個數時窗體距離屏幕頂端的twip數。第二對值是尺寸坐標,它代表窗體的寬與高(twip)。窗體的位置屬性表示窗體離屏幕左端和頂端的twip述,被命名為left和top。窗體的尺寸坐標屬性表示窗體的寬與高(twip),即width和height。在窗體窗口編輯區(qū)中移動窗體或調整窗體大小時,visual basic會自動修改屬性窗口中相應屬性的值。1.3.2 屬性(properties)窗口啟動:單擊“視圖”菜單,單記“屬性窗口” 或alt+v再按w鍵屬性窗口有四個部分構成:(1)對象列表框:當擊其右邊的下拉鈕可打

20、開所選窗體所含對象的列表。該列表分左右兩部分,左邊為對象名,右邊為控件名。(2)屬性顯示排列方式:“按字母序”和“按分類序”兩個選項卡。(3)屬性列表框:列出所選對象在設計模式中可更改的屬性及默認值。他分成左右兩部分:左邊為屬性名,右邊為其屬性的屬性值。不同的對象,屬性列表框所列出的屬性也不相同。(4)屬性含義說明:當在屬性列表框中選取某個屬性時,在該區(qū)顯示所選屬性的含義。1.3.3工程資源管理器(project explorer)窗口啟動:單擊“視圖”菜單,單擊“工程資源管理器窗口” 或alt+v再按p鍵工程資源管理器窗口下有三個按鈕:(1)“查看代碼”按鈕:按此按鈕,可切換到代碼窗口,顯示

21、和編輯代碼。(2)“查看對象”按鈕:按此按鈕,可切換到窗體窗口,顯示和編輯對象。(3)“切換文件夾”按鈕:切換文件夾顯示的方式。工程資源管理器窗口下的列表窗口,以層次列表形式列出組成這個工程的所有文件。主要有兩種類型的文件:(1)窗體文件(.frm文件):該文件存儲窗體上使用的所有控件對象和有關的屬性、對象相應的事件過程、程序代碼。一個應用程序至少包含一個窗體文件。(2)標準模塊文件(.bas文件):所與模塊級變量和用戶自定義的通用過程。通用過程是指可被應用程序各處調用的過程。1.3.4 代碼(code)窗口啟動:單擊“視圖”菜單,單記“代碼窗口” 或alt+v再按c鍵還有兩外兩種常用的打開代

22、碼窗口的方法:(1)從工程資源管理器窗口中選擇一個窗體或標準模塊,并單級“查看代碼”按鈕。(2)在窗體窗口中,可雙擊一個控件或窗體本身。代碼窗口主要包括:(1)“對象”下拉列表框:顯示所選對象的名稱??蓡螕粲疫叺南吕粹o,來顯示此窗口的對象名。其中的“通用”表示與特定的對象無關的通用代碼,一般在此聲明模塊級變量或用戶編寫自定義過程。(2)“過程”下拉列表框:列出所有對應于“對象”列表框中對象的事件過程名(和可顯示用戶自定義過程名)。其中的“聲明”表示聲明模塊級變量。在“對象”列表框中選擇一個對象,在“過程”列表框中選擇一個事件過程名,即可夠成一個選中“對象”的事件過程模板。(3)“代碼”框:在

23、此框中輸入程序代碼。(4)“過程查看”按鈕:只能顯示所選的一個過程。(5)“全模塊查看”按鈕:顯示模塊中全部過程。1.3.5 立即(immediate)窗口啟動:單擊“視圖”菜單,單記“立即窗口” 或alt+v再按i鍵為調試應用程序提供的,在ide之中運行程序才有效。1.3.6 窗體布局(form layout)窗口啟動:單擊“視圖”菜單,單記“窗體布局窗口”或alt+v再按f鍵1.3.7 工具箱(toolbox)窗口啟動:單擊“視圖”菜單,單記“工具箱”或alt+v再按x鍵vb把工具箱里面形如按鈕的“東西”叫做“控件”(controls),或稱為activx對象,也稱為對象。工具箱中通常提供

24、20個標準控件。這20個控件的名稱和系統(tǒng)默認名及用戶給他們重新命名的前綴部分(建議,以便識別控件)如下表:控件名稱系統(tǒng)默認(name)用戶命名的前綴標簽(label)label1lbl框架(frame)frame1fra檢查框(checkbox)check1chk組合框(combobox)combo1cbo水平滾動條(hscorllbox)hscorll1hsb時鐘(timer)timer1tmr目錄列表框(dirlistbox)dir1dir形狀控件(shape)shape1shp圖像控件(image)image1img對象鏈接與嵌入(ole)-ole控件ole1ole圖片框(picture

25、box)picture1pic文本框(textbox)text1txt命令按鈕(commandbutton)command1cmd單選按鈕(optionbutton)option1opt列表框(listbox)list1lst垂直滾動條(vscrollbox)vscroll1vsb驅動器列表框(drivelistbox)drive1drv文件列表框(filelistbox)file1fil直線控件(line)line1lin數據控件(data)data1dat選擇工具窗體form1frm菜單mnu模塊mod用戶自定義數據類型typ可在工具箱中添加新的其他控件。方法是單擊“工程”菜單,單擊部件命

26、令,選擇要裝入的控件。第二章 簡單的vb程序設計主要內容l 對象和類l 屬性、事件、方法l 應用程序的建立方法和運行l(wèi) 窗體、標簽、文本框、命令按鈕l 一些常用方法:print、cls、move、setfocusl 工程的管理及環(huán)境設置l 程序調試與排錯1.初期的程序設計高運行效率、少占用內存為目標2.結構化程序設計程序的可讀性、可維護性為目標程序=算法+數據結構 面向過程的程序設計3.面向對象的程序設計降低程序的復雜性、提高軟件的開法效率和改善工作界面為目標程序=對象+消息 面向對象的程序設計2.1對象的有關概念2.1.1對象和類1.對象對象在現(xiàn)實生活中到處可見,例如,一個人、一輛汽車、一臺

27、電腦都是一個對象。因此,對象是具有某些特征的具體事物的抽象。每個對象都具有描述其特征的屬性,及附屬于它的行為。對象還可分為很多小對象,例如車輪也是一個對象,它由外胎、內胎、尺寸等屬性。對象是類的一個實例,繼承了類的屬性、方法。vb中常用的對象有:窗體、控件等。2.類類是創(chuàng)建對象實例的模板,是同種對象的集合與抽象,它包含了創(chuàng)建對象的屬性描述和行為特征的定義。類是對象的定義,而對象是類的一個實例。類的一組屬性和方法定義了類的界面,它封裝了用于類的全部信息。當應用程序在某處由類創(chuàng)建一個對象,用戶只要使用對象的屬性和方法進行相應的操作,而不必關心其內部是如何實現(xiàn)的。面向對象的程序設計主要建立在類和對象

28、的基礎上。通常的面向對象的程序設計中的類是由程序員設計的。而在vb重,類可由系統(tǒng)設計好,也可由程序員自己設計。在vb中,工具箱上的可視類圖標是vb系統(tǒng)設計好的標準控件類,此外,vb還可在“工程”菜單的“部件”項中加入大量的activex控件。通過將類實例化,可以得到真正的控件對象。也就是說當在窗體上畫好一個控件時,就將類轉換成對象,即創(chuàng)建了一個控件對象,簡稱為控件。除了通過控件類產生控件對象外,vb還提供了系統(tǒng)對象,例如,打印機(printer)、剪貼板(clipbord)、屏幕(screen)、應用程序(app)錯誤(err)等。窗體是一個特例,它既是類也是對象。當向一個工程添加一個窗體時,

29、實質就是由窗體類創(chuàng)建了一個窗體對象。21.2 對象的建立和編輯1.對象的建立在窗體上建立對象的步驟如下:(1)鼠標定位在工具箱內要制作控件對象的對應的圖標上,單擊進行選擇;(2)將鼠標移到窗體上所需的位置處,按下鼠標左鍵拖拽到所需的大小后釋放鼠標。也可雙擊工具箱上的某個控件類圖標,即可在窗體的中心處形成一個默認大小的對象。2.對象的選定單擊窗體上的對象,即可選中該對象;被選中的對象,對象的邊框上將出現(xiàn)8個蘭色的方塊,稱為控制柄。操縱這些控制柄可改變對象的大小。要同時選中多個對象進行操作,有兩種方法:方法一:拖動鼠標指針,將欲選定的對象包圍在一個虛框中然后釋放鼠標按鈕即可。方法二:先選定一個對象

30、,按ctrl鍵,再逐一單擊其他要選定的控件。3.復制或刪除對象(1)復制對象 選中要復制的對象,單擊工具欄的“復制”按鈕,再單擊“粘貼”按鈕,這時顯示是否要創(chuàng)建控件數組對話框,單擊對話框中的“否”按鈕,這樣就復制了標題相同而名稱不同的對象了。(2)刪除對象 選中刪除的對象,然后按del鍵。4.對象的命名每個對象系統(tǒng)都給它確定了默認的名字,這在第一章介紹工具箱中的標準控件已經列表介紹了。用戶可以在控件的屬性窗口中的name屬性中自己重新定義控件的名字??丶话慵由峡丶熬Y,以便見名知道控件的類型,同時長度應小于等于255個字符。21.3 對象的屬性、事件和方法每個vb控件都是具有屬于自己的屬

31、性、事件和方法的對象??梢园褜傩钥闯梢粋€對象的性質,把事件看成對象的響應,把方法看成對象的動作。因此,屬性、事件、方法構成了對象的三個要素。1.屬性 對象的性質,即用來描述和反映對象特征的參數??梢酝ㄟ^以下兩種方法設置對象的屬性:在設計階段,通過屬性窗口直接來設置對象的屬性。在程序代碼中通過賦值實現(xiàn),其格是為: 對象名.屬性名=屬性值例如:commd1.caption=”確定” text1.text=”好人一生平安” text1.fontname=”宋體”2.事件 、事件過程和事件驅動(1)事件響應對象的動作稱為事件,它發(fā)生在用戶與應用程序交互時。也就是說事件時發(fā)生在該對象上的事情。系統(tǒng)為每個

32、對象預先定義好了一系列的事件,如單擊控件、鼠標移動、鍵盤按下等。常用控件事件一覽表事件描述activeate窗體獲得焦點時發(fā)生,它發(fā)生在gotfocus事件之前。deactivate另一個窗體獲得焦點時發(fā)生,它發(fā)生在lostfocus事件之后。mousedown按下鼠標按鈕click單擊鼠標按鈕mouseup松開鼠標按鈕dblclick雙擊鼠標按鈕mousemove移動鼠標initialize窗體首次生成時發(fā)生load窗體裝入到活動內存并顯示到屏幕上時發(fā)生unload應用程序利用代碼將窗體從窗口中刪除時發(fā)生。paint當用戶移走覆蓋窗體的對象(如圖標)導致窗體重繪時發(fā)生resize窗體、圖片框

33、大小發(fā)生改變時發(fā)生change文本框、標簽、滾動條、組合框等內容發(fā)生改變時發(fā)生kepress按鍵盤時發(fā)生timer定時器事件說明:對于可接受鼠標事件的控件來說,事件發(fā)生的順序為mousedown,click,mouseup,dblclick。(2)事件過程 當在某個對象上發(fā)生了某個事件后,應用程序就要處理這個事件,而處理的步驟就是運行事件過程(用戶編寫的程序代碼,就是事件的處理程序)。它是針對某個對象而言的過程。事件過程的形式如下:private sub 對象名_事件名(參數列表)end sub當用戶對一個對象發(fā)出一個動作時,可能會同時在該對象上發(fā)生多個事件。寫程序時并不是都要對這些事件編寫代

34、碼,只要編寫用戶對某些事件感興趣的過程代碼。沒有編寫代碼的事件為空事件,系統(tǒng)也不會處理該過程。(3)事件驅動程序設計 在vb中,程序在執(zhí)行后系統(tǒng)等待某個事件的發(fā)生,一旦發(fā)生了某事件就去執(zhí)行處理此事件的事件過程,待該事件過程執(zhí)行完后,系統(tǒng)又處于等待某個事件發(fā)生的狀態(tài),這就是事件驅動程序設計方式。vb程序的執(zhí)行步驟如下:1)啟動應用程序,裝載和顯示窗體2)窗體(或窗體上的控件)等待事件的發(fā)生;3)事件發(fā)生時,執(zhí)行對應的事件過程;4)重復執(zhí)行步驟(2)和(3);5)直到遇到“end”結束語句結束程序的運行或按“結束”強行停止程序的運行。3.方法 面向對象的程序設計語言,為程序設計人員提供了一種特殊的

35、過程和函數(稱為方法)。在vb中已將一些通用的過程和函數編寫好并封裝起來,作為方法供用戶直接調用。方法的調用格式:對象.方法名參數列表如省略了對象,表示為當前對象,一般為窗體。例如:form1.print ”歡迎光臨”2.2建立簡單的應用程序建立一個用用程序分以下幾個步驟:(1)建立用戶界面的對象(2)對象屬性的設置(3)對象事件過程及編碼(4)保存和運行程序例2.1 在myvb下 vb2ex2_1lbc02_1.vbp2.2.1 建立用戶界面的對象按例2.1表述2.2.2 對象屬性的設置按例2.1表述并演示下表:對象屬性的設置默認控件標題(caption)文本(text)字號(fontsiz

36、e)磅值form1大小寫字母轉換無定義12label1輸入字符串無定義12label2轉換無定義12text1無定義空白10text2無定義空白10command1清屏無定義10command2結束無定義10“無定義”表示該對象無此屬性,“空白”表示清除原屬性2.2.3 對象事件過程及編程private sub cmdexit_click() 結束按鈕endend subprivate sub cmdnew_click() 清屏按鈕txtinput = text屬性是文本框的默認屬性txtresult = txtresult 相當于 txtresult.texttxtinput.setfocu

37、s 焦點落在txtinput文本框上end subprivate sub txtinput_keypress(keyascii as integer) 輸入文本框按鍵事件dim aa as string * 1aa = chr$(keyascii) 按下的字符返回其ascii碼值select case aacase a to zaa = chr$(keyascii + 32) 轉成小寫字母case a to zaa = chr(keyascii - 32) 轉成大寫字母case 空格字符不轉換case elseaa = * 其他字符轉換成*end selecttxtresult.text =

38、txtresult.text + aa 轉換內容放在結果文本框內end sub2.2.4 保存和運行程序1保存工程第一次保存文件或欲對文件改名存盤時,分別選擇“文件”菜單下的“form1另存為”(窗體文件)命令和“工程另存為”(工程文件)命令;在彈出的對話框里填入存儲目錄,窗體文件名,工程文件名并按保存按鈕即可。以后保存文件只要按工具欄上的保存圖標即可。注:工程文件的擴展名為 .vbp,窗體文件的擴展名為.frm。系統(tǒng)默認將它們保存在vb98的文件目錄中。如要修改或運行該文件,只要選擇“文件”菜單的“打開工程”命令,輸入要打開的工程文件名并按“打開”按鈕即可?;蛘叽蜷_保存工程文件的目錄雙擊工程

39、文件圖標也可。2程序的運行vb程序可以以兩種模式運行,即編譯模式和解釋模式。(1)編譯運行模式選擇“文件”菜單的“生成exe”命令后,系統(tǒng)讀取程序中全部代碼,將其轉換為機器代碼,并保存在.exe的可執(zhí)行文件中,供以后多次運行。(2)解釋運行模式選擇“運行”菜單的“啟動”命令(或按f5鍵、或單擊“啟動”按鈕),系統(tǒng)讀取事件激發(fā)的那段事件過程代碼,將其轉換成機器代碼,然后執(zhí)行該機器代碼。由于轉換后的機器代碼不保存,如需要運行,必須再解釋一次,因此運行速度比編譯運行模式慢。2.3 窗體和基本控件2.3.1 基本屬性1.name名稱屬性創(chuàng)建的對象有它默認的名稱。在程序中,控件名是作為對象的標識而引用,

40、不會顯示在窗體上??稍趯傩源翱谥匦滦薷膎ame的屬性值從而達到修改控件名稱的目的。2.caption標題屬性該屬性決定了在控件上顯示的內容。3.height、width、top和left屬性height、width屬性,決定了控件的高度和寬度。top和left屬性決定了控件距離窗體的上邊框距離和距離窗體的左邊邊框的距離(如果是窗體則是針對屏幕而言)。在窗體上設計控件時,vb自動提供了默認的坐標系統(tǒng),窗體的上邊框為坐標橫軸,右方向為橫軸正方向,左邊框為坐標縱軸,向下方向為縱軸正方向。窗體左上角頂點為坐標原點。默認長度單位為twip(緹)。應用程序要使窗體在屏幕的中央顯示,可用如下代碼:form.

41、left=(screen.width-form.width)/2form.top=(screen.height-form.height)/24.enabled屬性決定控件是否可操作。 當設置為false時,呈暗淡色,禁止用戶進行操作。當設置為為true時,允許用戶操作,并能對做出的操作做出響應。.5. visible屬性運行時控件是否可見。當設置為false時, 用戶看不到控件,但控件本身存在??梢酝ㄟ^在程序中設置這個屬性,使控件需要時出現(xiàn),不需要時不出現(xiàn)。6. font屬性fontname字體 fontsize字體大小 fontbold是否是粗體fontitalic是否斜體 fontstri

42、kethru是否加一刪除線fontunderline是否帶下劃線例2.2 mvb下 vb2ex2_2lbc02_2.vbp在窗體上建立兩個命令按鈕,名稱分別是command1和mand1的font屬性用代碼實現(xiàn)。從屬性窗口設置command2的font屬性為隸書、斜體、四號。private sub form_load()form1.top = (screen.height - form1.height) / 2 使窗體在屏幕的中央form1.left = (screen.width - form1.width) / 2command1.caption = 確定comma

43、nd1.fontname = 黑體command1.fontsize = 20 數值command1.fontbold = true 粗體command1.fontitalic = true 斜體command1.fontunderline = true 下劃線command1.fontstrikethru = true 中穿劃線command1.enabled = false 按鈕不可用 。默認可用用代碼設定command2的屬性command2.caption = 取消command2.fontname = 隸書command2.fontsize = 20command2.fontbold

44、 = truecommand2.fontitalic = truecommand2.fontunderline = trueend sub7. forecolor前景顏色屬性設置控件的前景顏色(即正文顏色). 其值是一個16進制常數,用戶可以在調色板中直接選擇所需顏色。8. backcolor背景顏色屬性9. backstyle背景風格屬性transparent:透明顯示,即控件背景顏色顯示不出來。1-opaque: 不透明,此時可為控件設置背景顏色。10. borderstyle邊框風格屬性0-none:控件周圍沒有邊框 1-fixed single:控件帶有單邊框。上述屬性值和意義僅適合于

45、label、text、picture等控件,對于窗體、line、shape的borderstyle屬性有其他不同范圍的值和的意義。11. alignment屬性控件上正文水平對齊方式 0: 正文左對齊 1: 正文右對齊2: 正文居中(vb常數分別為vbleftjustify、vbrightjustify、vbcenter)12. autosize屬性控件是否根據正文自動調整大小。 false:保持原設計時的大小,若正文太長自動裁減掉。 true: 自動調整控件的大小。13. wordwarp屬性 只有當autosize 屬性值設置為true時,wordwarp屬性才生效。true: 按正文字體

46、大小和多少在垂直方向上改變顯示區(qū)域的大小。在水平方向上不發(fā)生變化。false: 表示在水平方向上按正文長度放大和縮??;垂直方向上以字體大小來縮放顯示區(qū)域。14mousepointer 屬性該屬性值表示在鼠標移動某個特定控件上時,被顯示的鼠標指針類型。設置的值的范圍為015,若值為99時,用戶可通過設置屬性mouseicon的值來改變指針顯示的圖標。15mouseicon屬性用戶自己定義鼠標圖標,文件類型為.ico或.cur。只有當mousepointer=99時,mouseicon設置才有效。16tabindex決定了按tab鍵時,焦點在各個控件間移動的順序。各個控件默認tabindex屬性的

47、值就是以控件建立時的順序,第一個建立的控件的tabindex屬性值為0??梢酝ㄟ^代碼或屬性窗口中重新設定tabindex屬性值。例2.3 myvb下的 vb2ex2_3lbc02_3.vbp有5個標簽,其名稱默認值為label1label5,每個標簽的寬度和高度相同,有關屬性設置如下:控件屬性設置默認控件名(name)標題(caption)有關屬性設置form1顏色、對齊、鼠標屬性例mousepointer=99 mouseicon=key04.icolabel1左對齊alignment=0,bordstyle=1label2居中alignment=2,bordstyle=1label3自動a

48、utosize=true,wordwrap=false, bordstyle=1label4背景白backcolor=&h00ffffff&, bordstyle=0label5前景紅forecolor=&h000000ff&, bordstyle=0部分代碼private sub form_load()form1.name = 標簽顏色、對齊、鼠標屬性用編程實現(xiàn)例鼠標置于對象區(qū)域時才顯示此區(qū)域定制的鼠標指針圖標form1.top = (screen.height - form1.height) / 2form1.left = (screen.width - form1.width) / 2f

49、orm1.mousepointer = 99form1.mouseicon = loadpicture(app.path + key04.ico) 鼠標置于左邊對齊標簽區(qū)域位置時鼠標指針圖標label1.mousepointer = 99label1.mouseicon = loadpicture(app.path + pc04.ico)鼠標置于中間對齊標簽區(qū)域位置時鼠標指針圖標label2.mousepointer = 99label2.mouseicon = loadpicture(app.path + trash02b.ico)label1.alignment = 0 文字左對齊labe

50、l1.borderstyle = 1 有邊框label2.alignment = 2 文字中間對齊label2.borderstyle = 1 有邊框label4.backcolor = &hffffff 背景白色label4.borderstyle = 0 無邊框label5.forecolor = &hff 顯示紅色文字label5.borderstyle = 0 無邊框label3.autosize = truelabel3.wordwrap = true 垂直方向改變標簽大小label3.fontname = 黑體 以下設定該標簽標題文字的屬性label3.fontsize = 48l

51、abel3.fontbold = truelabel3.fontitalic = truelabel3.borderstyle = 1lblautoalignment.alignment = 1end sub17.控件默認屬性反映該控件最重要的屬性,使用時可省略屬性名。部分控件的默認屬性表控件名屬性名控件名屬性名文本框text標簽caption命令按鈕caption圖形、圖片picture單選按鈕value復選框value例如:label.caption=朱子家訓與label=朱子家訓都是設置標簽控件的caption屬性值為“朱子家訓”。 2.3.2 窗體1主要屬性(1)caption設置在窗

52、體的標題欄上顯示的內容(2)maxbutton、minbutton。這兩個屬性的值默認值為true,窗體標題欄右角上的最大(最?。┌粹o都有。當maxbutton(minbutton)設置為false時,窗體標題欄右角上的最大(最小)按鈕消失即不可能通過單擊此處的最大化(最小化)按鈕來改變窗體的大小。可同時設置兩個屬性為false。(3)icon、controlbox icon用來改變窗體標題欄左上角的控制菜單的圖標。默認為vb程序的圖標。controlbox的默認值為true即窗體有控制菜單。當設置為false時,窗體無控制菜單,同時標題欄上的最大、小、關閉按鈕及圖標都消失了。(4)pictu

53、re、autoredrawpicture 用來在窗體上加載一張圖片,注意加載的圖片能否覆蓋整個窗體,取決于窗體的大小和圖片的大小。autoredraw ,默認值為false。當在load等事件代碼中,有用繪圖方法繪出的圖形和輸出語句輸出的數據時,一定要設置autoredraw的值為true,否則在窗體上不可能看見用繪圖方法繪出的圖形和輸出的內容。(5)borderstyle 0(none) :無邊框,窗體無法移動和改變大小,標題欄和標題欄上的按鈕都沒有。1(fixed single):窗體有單線邊框,可移動,不可改變大小,有關閉按鈕和控制菜單。2(sizeable): 默認值。窗體有雙線邊框,可移動并可改變大小,在默認情況下標題欄上的按鈕控制菜單都有。3(fixeddialog): 窗體為固定對話框,可移動,不可改變大小,有關閉按鈕和控制菜單。與1基本無差別。4(fixed tool window):窗體外觀和工具條相似(表現(xiàn)在標題欄的高度笮一些(較少了120緹),可移動,不

溫馨提示

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

最新文檔

評論

0/150

提交評論