全書配套課件:Visual Basic程序設計_第1頁
全書配套課件:Visual Basic程序設計_第2頁
全書配套課件:Visual Basic程序設計_第3頁
全書配套課件:Visual Basic程序設計_第4頁
全書配套課件:Visual Basic程序設計_第5頁
已閱讀5頁,還剩995頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、 程序設計語言與程序設計程序設計語言與程序設計1.1 Visual Basic Visual Basic簡介簡介1.2Visual BasicVisual Basic集成開發環境集成開發環境1.3 設計設計VBVB應用程序一般步驟應用程序一般步驟1.5通過一個簡單的應用程序快速入門通過一個簡單的應用程序快速入門1.4對象、事件與事件過程對象、事件與事件過程1.6 Visual Basic(簡稱VB)是一種功能強大的新一代高級程序設計語言。本章介紹程序設計語言的基礎知識;Visual Basic集成開發環境;通過一個簡單的實例說明設計Visual Basic應用程序的步驟;最后闡述面向對象程序設

2、計的一些重要概念。1.1 程序設計語言與程序設計 人們想用計算機解決一個問題,必須事先設計好計算機處理信息的步驟,把這些步驟用計算機能夠識別的指令編寫出來并送入計算機執行,計算機才能按照人的意圖完成指定的工作。我們把計算機能執行的指令序列稱為程序,而編寫程序的過程稱為程序設計。 人與計算機交流使用的是“程序設計語言”。同人類語言一樣,程序設計語言也是由字、詞和語法規則構成的一個系統。從計算機執行的角度來看,程序設計語言通常分為機器語言、匯編語言、和高級語言三種。1.2 Visual Basic簡介 Visual Basic是Microsoft公司于1991年推出的基于窗口的可視化程序設計語言。

3、“Visual”是“可視化的 ”、“形象化的”的意思。它提供了一套可視化設計工具,大大簡化了Windows程序界面的設計工作;同時其編程系統采用了面向對象、事件驅動機制。 應用Visual Basic可以方便地完成從小的應用程序,到大型的數據庫管理系統、多媒體信息處理、功能強大的Internet應用程序等各項任務。 Visual Basic 6.0 有三種版本,可以滿足不同的開發需要。 學習版 專業版 企業版 本教程以Visual Basic 6.0企業版為背景講授。 VB 6.0安裝完成后,“Microsoft Visual Basic 6.0中文版”菜單選項即加入到“開始”菜單的“程序”組

4、中。單擊其中的“Microsoft Visual Basic 6.0中文版”即可啟動VB。1.3 Visual Basic集成開發環境 VB啟動后,首先顯示“新建工程”對話框,如圖1-1所示。 圖圖1-1 “1-1 “新建工程新建工程”對話框對話框 缺省狀態下“新建工程”對話框的選項為“標準EXE”,標準EXE程序是典型的應用程序。本書絕大多數應用程序都屬于標準EXE程序。 我們直接單擊“打開”按鈕,創建“標準EXE”類型應用程序,進入集成開發環境主界面,如圖1-2所示。 標題欄主菜單工具箱窗體窗口工具欄工程窗口屬性窗口 窗體布局窗口圖圖1-2 Visual Basic 6.01-2 Visu

5、al Basic 6.0集成開發環境集成開發環境 標題欄主菜單工具箱窗體窗口工具欄工程窗口屬性窗口 窗體布局窗口圖1-2 Visual Basic 6.0集成開發環境。 在集成開發環境中可以進行程序設計、編輯、編譯和調試等工作。 下面對集成開發環境中的各元素作簡要介紹。 1標題欄 用來顯示窗口的標題。啟動VB6.0后,標題欄顯示的信息是:“工程1- Microsoft Visual Basic設計”,表示現在處于“工程1”的設計狀態。方括號內的信息隨著工作狀態不同而改變。例如,運行一個工程時,設計將變成運行。 2主菜單 菜單欄中包含了使用VB6.0所需要的命令。主菜單中共有13個菜單項,每個菜

6、單項都有一個下拉菜單,內含若干個菜單命令,單擊某個菜單項,即可打開該菜單,單擊某個菜單中的某一條,就執行相應的命令。 3上下文菜單 在對象上右擊鼠標鍵即可打開上下文菜單。在上下文菜單中列出的操作選項清單取決于右擊鼠標鍵所在環境。例如,在“工具箱”上單擊鼠標右鍵時顯示的上下文菜單,如圖1-4所示,可以在上面選擇“部件”,打開部件對話框;或選擇“隱藏”,把工具箱隱藏起來等等,使用上下文菜單可使操作更快捷。上下文菜單也稱為彈出式菜單或快捷菜單。 圖圖1-4 1-4 工具箱的上下文菜單工具箱的上下文菜單 4工具欄 它以圖標按鈕的形式提供了常用的菜單命令。單擊工具欄上的按鈕,則執行該按鈕所代表的操作。按

7、照缺省規定,啟動 Visual Basic 之后顯示“標準”工具欄。附加的編輯、窗體設計和調試的工具欄可以從“視圖”菜單上的“工具欄”命令中移進或移出。 “標準”工具欄各按鈕的作用如圖1-5所示。 添 添 菜 打 保 剪 復 粘 查 撤 重 啟 中 結 工 屬 窗 對 工 數 控 加 加 單 開 存 切 制 貼 找 銷 復 動 斷 束 程 性 體 象 具 據 件 標 窗 編 工 工 資 窗 布 瀏 箱 庫 管 準 體 輯 程 程 源 口 局 覽 瀏 理 控 器 管 窗 器 覽 器 件 理 口 窗 器 口圖圖1-5 1-5 標準工具欄標準工具欄 5工具箱 工具箱提供了一組在設計時可以使用的常用工

8、具,這些工具以圖標的形式排列在工具箱中,如圖1-6所示。這些工具就像制作機械零件的模具一樣。利用模具可以做出零件;利用工具箱中工具可以做出控件。 雙擊工具箱中的某個工具圖標,或單擊工具圖標后按住鼠標左鍵在窗體上拖動,即可在窗體上做出一個這種控件。設計人員在設計階段可以利用這些工具在窗體上構造出所需要的應用程序界面。除了系統提供的這些標準工具外,VB還允許用戶添加新的控件工具。 圖片框文本框命令按鈕單選按鈕列表框垂直滾動條驅動器列表框文件列表直線數據控件組合框指針標簽框架復選框定時器水平滾動條目錄列表框形狀控件圖像控件OLE容器圖圖1-6 1-6 工具箱工具箱 6窗體窗口 “窗體窗口”也稱為“對

9、象窗口”,主要用來在窗體上設計應用程序的界面,用戶可以在窗體上添加控件來創建所希望的界面外觀。例如,當新建一個工程時,VB自動建立一個新窗體,并命名為Form1,如圖1-7所示。 圖圖1-7 1-7 窗體窗口窗體窗口 7工程窗口 首先說明一下“工程”的概念。VB把一個應用程序稱為一個工程(Project),而一個工程又是各種類型的文件的集合,這些文件包括工程文件(.vbp)、窗體文件( .frm)、標準模塊文件(.bas)、等文件 。 VB 要求一個工程至少包含兩個文件,即工程文件(.vbp) 和窗體文件(.frm)。至于一個工程要包括多少種文件,由程序設計的復雜程度而定。圖1-8 工程窗口

10、一個工程可以通過“工程窗口”來顯示,工程窗口列出了當前工程所包含的文件清單。如圖1-8所示,是啟動VB后建立的一個最簡單工程的結構。 圖圖1-8 1-8 工程窗口工程窗口 8屬性窗口 屬性是指對象(窗體或控件)的特征,如大小、名稱、標題、顏色、位置等。屬性窗口列出了被選定的一個對象的所有屬性。如圖1-9所示。 對象下拉列表框屬性列表屬性說明欄排序選項卡 圖圖1-9 1-9 屬性窗口屬性窗口 9窗體布局窗口 如圖1-10所示,窗體布局窗口中有一個表示顯示器屏幕的圖像,屏幕圖像上又有表示窗體的圖像,它們標示了程序運行時窗體在屏幕中的位置。用戶可拖動窗體圖像調整其位置。 圖圖1-10 1-10 窗體

11、布局窗口窗體布局窗口1.4 通過一個簡單的應用程序 快速入門 學習VB最好的方法是實踐,現在我們動手設計一個簡單的應用程序。 【例1.1】圖1-11所示的是一個簡單的應用程序的運行界面,它由一個窗體、一個文本框和一個命令按鈕組成。當用戶單擊命令按鈕“顯示”時,文本框中出現“歡迎使用VB”。 文本框窗體命令按鈕圖圖1-11 1-11 例例1.11.1運行界面運行界面 設計步驟: 1新建工程 2添加文本框 3添加命令按鈕 4設置屬性 5編寫事件過程代碼 前面的工作把應用程序的界面設計好了,屬性也設置完畢,如圖1-17所示。但現在應用程序并不能實現實際的功能。為了使它具有一定的功能,還必須為對象編寫

12、實現某一功能的事件過程代碼。因為題目要求單擊命令按鈕后,文本框中顯示文字串,所以我們要對命令按鈕這個對象的單擊事件編寫一段程序,以指定用戶單擊命令按鈕后要執行的操作。 圖圖1-17 1-17 例例1.11.1界面界面 現在開始編寫事件過程代碼。 (1)雙擊窗體上的“顯示”按鈕,屏幕上出現代碼窗口,程序代碼就在這里編寫,如圖1-18所示。 對象列表框事件列表框代碼編輯區圖圖1-18 1-18 代碼窗口代碼窗口 編寫如下事件過程: Private Sub Command1_Click() Text1.Text = 歡迎使用VB End Sub VB程序代碼由一條一條的語句構成。 本實例程序很簡單,

13、只有三條語句。 至此,程序代碼編寫完畢,現在可以運行程序了。 6運行應用程序 從“運行”菜單中選“啟動”。 7保存應用程序 VB應用程序至少有兩種文件需要保存: 窗體文件(.frm) 工程文件(.vbp) 8生成EXE文件 程序一旦設計完成,且測試成功,我們還可以將它編譯成可直接執行的EXE文件,這樣用戶就可以在Windows環境中直接執行它們,而不必再進入VB環境了。 1.5 設計VB應用程序一般步驟 前一節我們通過實例介紹了設計一個應用程序的具體操作過程,對VB有了一定的感性認識。本節介紹設計VB應用程序一般步驟。 設計VB應用程序主要有以下四個步驟: 1設計用戶界面。 2設置屬性。 3編

14、寫代碼。 4保存和運行調試程序、生成EXE文件。 1.5.1 設計用戶界面 用戶界面是用戶與計算機交流的媒介,用戶輸入或輸出的信息都在這個界面中進行。 一個良好的用戶界面能使用戶操作方便、視覺美觀。 用戶界面主要由窗體和控件組成,設計用戶界面的主要工作就是把構成界面的控件放在窗體上,然后對窗體上的控件進行調整。 1向窗體上添加控件 向窗體上添加控件有兩種方法: (1)雙擊工具箱中的控件圖標,該控件即自動添加到了窗體的中央。 (2)單擊工具箱中的控件圖標,然后將鼠標指針移到窗體上,鼠標指針變成十字型,在窗體上需要放控件的位置拖動鼠標畫出想要的尺寸,然后釋放鼠標,即可在窗體上畫出該控件。 2對窗體

15、上的控件進行調整 對窗體上的控件進行調整的基本操作如下: (1)選中控件 單擊窗體上的某個控件則選中該控件;若要選中窗體上的多個控件,可按下Shift或Ctrl鍵并單擊這些控件; 如果要選擇的控件彼此相鄰,可以用鼠標在其周圍畫一個框進行選擇。所選控件四周出現控制點,表示選中。 (2)調整控件大小及位置 通過對控件四周控制點的拖拽可調整控件的大小,而通過對控件的拖拽可調整控件的位置。 若要對窗體上的多個控件進行精確布置,可使用“格式”菜單。 比如,想讓三個命令按鈕的大小完全一樣,可以這樣操作:先選擇這三個命令按鈕,然后選“格式”菜單中的“統一尺寸”。 1.5.2 設置屬性 屬性是指對象的特征,如

16、大小、名稱、標題、顏色、位置等。屬性窗口列出了被選中對象的所有屬性,利用屬性窗口,可為界面中的對象(窗體或控件)設置相應的屬性。 打開屬性窗口可用以下四種方法: 1選“視圖”菜單中的“屬性窗口”。 2按F4鍵。 3單擊工具欄上的“屬性”按鈕。 4使用對象的上下文菜單。 在屬性窗口中所進行的是屬性初始值的設置,用戶也可在程序中對他們進行設置和修改。 1.5.3 編寫代碼 為了使應用程序具有一定的功能,還必須為對象編寫實現某一功能的程序代碼,編寫程序代碼要在“代碼窗口”進行。 編寫程序代碼是創建VB應用程序的主要工作環節,用戶需要的運算、處理,都需要通過編寫代碼來實現。 一個好的程序具有以下特點:

17、 1正確性。能運行通過,并達到預期目的。 2易讀性。結構清晰,便于查錯、修改。 3運行效率高。程序運行時間較短,占用的存儲空間較少。 VB代碼書寫格式比較自由。 代碼不區分字母的大小寫,一行允許多達255個字符。 通常一行寫一條語句,這樣程序看起來比較清晰。 在同一行上也可寫多個語句,這時語句間用冒號“:”分隔。 例如,a=4:b=5:c=6。單行語句也可分若干行書寫,要使用一個空格后跟一個下劃線作續行符。如下所示: dim a as single ,b as single ,c as single _ d as single ,e as single 1.5.4 保存和運行調試工程、生成EX

18、E文件 1保存工程 選“文件”菜單中的“保存工程”或單擊工具欄中的“保存”按鈕即可。 對于新工程,系統會在對話框中提示保存的文件夾和文件名,分別保存各類文件。 如果再一次保存工程,這些對話框就不會出現了,因為系統已經知道了要保存位置和文件名。 如果要以另外的文件名存盤,可以選“文件”菜單中的“工程另存為”。 2運行調試工程 運行工程,盡可能地發現程序中存在的錯誤和問題,排除錯誤、解決問題。 運行工程可用以下三種方法: (1)選“運行”菜單中的“啟動”。 (2)單擊工具欄中的“啟動”按鈕。 (3)按F5鍵。 一般來講,程序很少能一次運行通過,這是因為程序中有這樣那樣的錯誤。程序中有錯誤是難免的也

19、是正常的,這是由它反映的實際問題的復雜性,及程序本身邏輯結構的復雜性決定的。但是,我們對程序中的錯誤不能置之不理,必須加以排除。 程序中的錯誤可分為三類: (1)編譯錯誤。在程序編譯過程中發現的語法錯誤。如:表達式(a+b*(d+e),缺少了右括號。 (2)運行錯誤。在程序運行時執行了非法操作。如:除法運算時除數為零等。 (3)邏輯錯誤。在程序編譯和運行時均不能發現的錯誤。如:把x+2寫成了x+3。 對于前兩類錯誤,在錄入或運行過程中系統會指出,程序員可根據系統給出的提示信息予以排除,而對于邏輯錯誤,則比較麻煩,需要認真分析,有時需借助調試工具才能查出。 3生成EXE文件 選“文件”菜單中的“

20、生成.exe”(實際操作時,省略號位置上顯示的是當前的工程文件名),在彈出的“生成工程”對話框中,選擇保存文件夾,輸入文件名,單擊“確定”按鈕,EXE文件便生成了。 1.6 對象、事件與事件過程 VB 是面向對象的程序設計語言。面向對象程序設計是一種以對象為基礎,以事件來驅動對象的程序設計方法。它將一個應用程序劃分成多個對象,并且建立與這些對象相關聯的事件過程。通過對象對所發生的事件產生響應,來執行相應的事件過程,以引發對象狀態的改變,從而達到處理的目的。 1對象 對象是VB應用程序的基礎構件。窗體和控件都是對象,被稱作對象的還有數據庫、圖表等,對象具有屬性和方法,并響應外部事件。在開發一個應

21、用程序時,必須先建立各種對象,然后圍繞對象進行程序設計。 2對象的屬性 屬性是指對象的特征。 每一種對象都有一組特定的屬性,在屬性窗口中可以看到。有些屬性屬于公共屬性,有些屬性則屬于該對象的專有屬性。每個屬性都有一個缺省值,如果不改變該值,應用程序就使用它,如果缺省值不能滿足要求,就要對它重新設置。 3對象的方法 方法是VB提供的一種特殊子程序。 每個方法完成某個功能,用來完成諸如顯示對象、隱藏對象、繪圖、打印等操作。但其實現的步驟和細節用戶既看不到,也不能修改,用戶能做的就是在編程時直接調用它們。 4對象的事件 對象的事件是VB預先定義好的,能被對象識別的動作。 例如單擊(Click)事件,

22、雙擊(DblClick)事件、鍵盤按下(Keypress)事件等。 在運行應用程序時,當單擊一個命令按鈕,對于命令按鈕這個對象,就發生了一個單擊事件。 事件可由用戶引發(例如單擊鼠標),可由系統引發(例如定時器事件),也可由代碼間接引發。不同類型的對象能識別不同的事件。如窗體能識別單擊和雙擊事件,而命令按鈕能識別單擊事件但不能識別雙擊事件。每一種對象能識別的事件可以從該對象的代碼窗口右邊事件框的下拉列表中看到。 5事件過程 對象感應到某一事件發生時所執行的程序稱為事件過程。 盡管對象能自動識別預定義的事件,但對象是否響應具體事件以及如何響應具體事件則取決于程序員是否在程序中作了安排,即程序員是

23、否為該對象的這個事件編寫了實現某一功能的程序代碼。想讓對象響應事件時,就應把代碼寫入這個事件的事件過程之中。事件過程的形式如下: Private Sub 對象名_事件名() (VB程序代碼) End Sub 例如:單擊命令按鈕“command2”,清空文本框“text1”,則對應的事件過程為: Private Sub Command2_Click() Text1.Text = End Sub VB程序的執行是由事件來驅動的,以下是事件驅動應用程序的典型工作過程。 (1)啟動應用程序,裝載和顯示窗體。 (2)對象等待事件的發生。 (3)事件發生后,如果在相應的事件過程中存在代碼,就執行代碼。 (

24、4)應用程序等待下一次事件。 VB VB的基本字符集和詞匯集的基本字符集和詞匯集2.1 VB VB的基本數據類型的基本數據類型2.2常量與變量常量與變量2.3 常用的內部函數常用的內部函數2.5運算符與表達式運算符與表達式2.4 本章將介紹在編寫代碼時用到的一些最基礎的知識:VB的基本字符集和詞匯集、VB的基本數據類型、常量與變量、運算符與表達式及常用內部函數。 2.1 VB的基本字符集和詞匯集 2.1.1 字符集 字符是構成程序設計語言的最小語法單位。VB的基本字符集包括: 數字:0 1 2 3 4 5 6 7 8 9 英文字母:A B C D E F G H I J K L M N O P

25、 Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z 特殊字符: ! # $ % & ( ) * + - / :; ? _ | Spase(空格) 漢字:除標識符中用到的漢字以外,代碼中漢字和全角字符只能用在字符串中(即雙引號中)。 2.1.2 詞匯集 VB中的詞匯集是在代碼中具有一定意義的字符組合。 1關鍵字 關鍵字又稱保留字,是在語法上有固定意義的字母組合。 主要包括:命令名、函數名、數據類型名、運算符、VB系統提供的標準過程等。VB中約定關鍵字的首字母為大寫字母,但系統可以識別用戶輸入的小

26、寫字母并自動轉化為標準格式。在聯機幫助系統中,可以找到全部關鍵字的列表。 例如:Print、If、Then、Private、Sin、Sqr都是VB的保留字。 2標識符 標識符是用戶自己定義的名字,包括自定義常量名、變量名、控件名、自定義的過程名和函數名等。用戶通過標識符對相應的對象進行操作。 標識符應符合以下規則: (1) 除控件名和窗體名以外,不能使用關鍵字。除特殊需要外,窗體和控件的名稱也盡量不使用關鍵字。 (2) 變量、過程、函數名應在255個字符以內;控件、窗體、模塊名應在40個字符以內。必須以字母開頭,后跟字母、數字,下劃線的組合。另外,VB中允許使用漢字作為標識符。 (3) 標識符

27、中不允許出現間隔符號。如:空格、分號、逗號、運算符等。 除以上規則外,標識符應盡量做到簡單明了,見名知意。 例如: a 、 x3 、 數學_001 、 age 、score 、 姓名,是合法的標識符。 5x 、 x1+x2 、 a,b 、 print 、 public、李 四,是不合法的標識符。 其中:“5x”以數字開頭;“x1+x2”、“a,b”中有運算符和標點符號;“print 、 public”是系統保留字,“李 四”中有空格。2.2 VB的基本數據類型 在VB中,對不同類型的數據有不同的操作方式和不同的取值范圍。VB的數據類型有系統定義和自定義兩種,系統定義的數據類型由稱為標準類型,自

28、定義數據類型是由若干標準類型組合成的某種結構。表2-1列出了VB中的標準數據類型。 數據類型關鍵字類型符占內存字節數范圍字符串型String$與字符長度有關最多65535個字符整型Integer%2-3276832767長整型Long&4-21474836482147483647字節型Byte無10255單精度型Single!41.401298E-45|x|3.402823E38雙精度型Double#84.94065645841247E-324|x|1.79769313486232E308貨幣型Currency8-922337203685477.5808922337203685477.

29、5807邏輯型Boolean無2True或False日期型Date無8100.01.019999.12.31變體型Variant無根據需要表表2-1 VB2-1 VB中的標準數據類型中的標準數據類型 2.2.1 字符串型(String) 字符串包括除雙引號和回車以外可打印的所有字符,雙引號作為字符串的定界符號。 在字符串中,要區分字母的大小寫。雙引號內字符的個數叫做字符串的長度(包括空格)。長度為零的字符串叫做空字符串。 注意,在VB中, ASCII碼字符和漢字一樣都采用雙字節存儲。 例如:1234和張 三都是字符型。注意字符串中空格是有效字符。 運動員和abc長度都是3,占用字節數都是6。

30、2.2.2 數值型 VB中的數值型數據分為整型和實型兩大類。 1整型 整型數是不帶小數點和指數符號的數。包括整型、長整型和字節型整數。 (1)整型(Integer,類型符%) 整型數用兩個字節存儲,取值范圍是-32768到+32767。 例如:15,-345,654%都是整數型。而45678%則會發生溢出錯誤。 (2)長整型(Long,類型符&) 長整型用4個字節存儲,取值范圍是-2147483648到+2147483647。 例如:123456,45678&都是長整數型。 (3)字節型(Byte) 用一個字節存儲,取值范圍是0到255。 另外,VB中還可以使用八進制和十六進制

31、的整數,用于一些特殊用途,一般用戶不必掌握。 2實型 實型數據主要分為單精度、雙精度和貨幣型三種。 (1)單精度浮點數(Single,類型符!) 單精度數用4個字節存儲,有七位有效數字,取值范圍1.401298E-45|x|3.402823E+38。 例如:3.14!,2.718282。 當需要處理的數據超過單精度數的取值范圍,或需要的有效數字超過七位,則需要用雙精度數。 (2) 雙精度浮點數(Double,類型符#) 雙精度數用8個字節存儲,它最多可以表示十五位有效數字,取值范圍為94065645841247E-324|x| 大于大于ABCAFABCAFFalseFalse=大于等于大于等于

32、f = f = FghFgh TrueTrue 小于小于2545.52545.5TrueTrue=小于等于小于等于23=23=2323TrueTrue不等于不等于XYZxyzXYZxyzTrueTrueLikeLike使用通配符匹配使用通配符匹配比較比較WXYZ Like WXYZ Like * *X X* * TrueTrueIsIs引用對象比較引用對象比較Is0Is0由對象當前值決定由對象當前值決定表表2-3 VB6.02-3 VB6.0關系運算符關系運算符 注意以下的比較規則: (1)數值型比較與數學意義相同。 (2)字符型數據的比較按照從左到右的順序按其ASCII碼值比較大小。 (3)

33、Is代替代碼中引用的對象參與比較。 (4)Like與通配符(*、?、# 等)結合使用,經常用于模糊查找。 例如:“*X*”表示包含“X”的字符串。 “A*” 表示包含“A”開頭的字符串。 (5)關系運算符的優先級相同。 2.4.4 邏輯運算符 邏輯運算符對邏輯量進行邏輯運算,除Not外都是對兩個邏輯量運算。結果為邏輯值。表2-3列出了VB中的邏輯運算符。 運算符運算符意義意義優先級優先級說明說明示例示例返回值返回值NotNot取反取反1 1操作數為假時,結果為真操作數為假時,結果為真Not trueNot trueFalseFalseAndAnd與與2 2兩個操作數均為真時,結果才為兩個操作數

34、均為真時,結果才為真。其余為假真。其余為假False And False And TrueTrueTrue And True And TrueTrueFalseFalseTrueTrueOrOr或或3 3兩個操作數只要有一個為真,結兩個操作數只要有一個為真,結果為真果為真False Or False Or TrueTrueTrue Or True Or TrueTrueTrueTrueTrueTrue表表2-3 VB6.02-3 VB6.0中的邏輯運算符中的邏輯運算符 XorXor異或異或3 3兩個操作數為一真一假時,結果為真兩個操作數為一真一假時,結果為真False False XorXor

35、 TrueTrueTrue True XorXor TrueTrueTrueTrueFalseFalseEqvEqv等價等價4 4兩個操作數同為真或假時,結果為真兩個操作數同為真或假時,結果為真False False EqvEqv TrueTrueFalse False EqvEqv FalseFalseFalseFalseTrueTrueImpImp蘊含蘊含5 5第一個操作數為真,第二個操作數為第一個操作數為真,第二個操作數為假時,結果為假,其余情況都為真假時,結果為假,其余情況都為真True Imp True Imp FalseFalseFalse Imp False Imp TrueTr

36、ueTrue Imp True Imp TrueTrueFalseFalseTrueTrueTrueTrue續表續表 2.4.5 表達式 1表達式的組成 表達式由常量、變量、函數、運算符、()按照一定的規則組成,不管表達式的形式如何,都會計算出一個結果,該結果的類型由參與運算的數據和運算符決定。 2表達式的書寫規則 (1)表達式中的每個字符沒有高低、大小的區別。 (2)只能使用圓括號,可以多重使用,圓括號必須成對出現。 (3)VB表達式中的乘號“*”不能省略。 (4)能用系統函數的地方盡量使用系統函數。 例如:數學公式 寫成VB表達式為: (-b+sqr(b2-4*a*c)/(2*a) 只有算

37、術運算符的表達式也稱為算術表達式。aacbb242 3關系表達式和邏輯表達式 當使用關系運算符或邏輯運算符時,表達式又稱為關系表達式或邏輯表達式。 關系運算一般表示一個簡單的條件。 例如:age20 、score80、x+yz等。 邏輯表達式表示較復雜的條件。 例如:數學中的0 x5,寫成VB表達式應為0 x And x算術運算符關系運算符邏輯運算符。 在復雜的表達式中,可以增加圓括號使表達式的運算次序更清晰。2.5 常用內部函數 VB提供了大量的內部函數供用戶調用。在本節中我們分類介紹一些常用的內部函數。 函數的一般調用格式: 格式:函數名(參數表) 說明:參數表可以有一個參數或逗號隔開的多

38、個參數,多數參數都可以使用表達式。函數一般作為表達式的組成部分調用。 2.5.1 數學函數 VB提供了大量的數學函數。常用數學函數有三角函數、算術平方根函數、對數函數、指數函數及絕對值函數等。 注意: (1)三角函數的自變量以弧度表示。 例如,要寫成Sin(3.14159*27/180)。 (2)隨機函數Rnd(N)可以寫成Rnd,函數值可以是雙精度型。 Rnd返回小于1,大于零的雙精度隨機數。其值由系統根據種子數隨機給出,直接使用時,種子數是不變的,即每次執行程序都得到相同的隨機數序列。可以使用Randomize語句來改變種子數。其格式為:Randomize。這時用系統計時器返回的值作為隨機

39、種子。 2.5.2 轉換函數 轉換函數用于各種類型數據之間的轉換。 2.5.3 字符串函數 用于字符串處理。 2.5.4 日期與時間函數 日期與時間函數提供時間和日期信息。 窗窗 體體3.1命令按鈕命令按鈕3.2 標標 簽簽3.3文本框文本框3.4賦值語句賦值語句3.5 注釋語句、結束語句注釋語句、結束語句3.9程序調試程序調試3.10消息框消息框3.8輸入框輸入框3.7 Print Print方法方法3.6 VB應用程序的執行是由事件驅動的,當用戶觸發某一事件時執行相應的事件過程,這些事件過程之間并沒有特定的執行次序。 但在每一個事件過程內部,是有一定的執行控制流程的,這就是通常所說的三種基

40、本結構:順序結構、分支結構、循環結構。順序結構是最簡單的一種結構,該結構按語句排列的先后順序執行。 本章的主要內容有:VB最基本的幾個對象;與順序結構有關的語句和方法。通過本章的學習,可以進行簡單VB程序設計。3.1 窗體 創建VB應用程序的第一步是創建用戶界面。用戶界面的基礎是窗體,各種控件對象必須建立在窗體上。 啟動VB后,即在屏幕上顯示一個窗體,如圖3-1所示。 圖標標題最大化按鈕最小化按鈕關閉按鈕窗口區邊框 圖圖3-1 3-1 窗體窗體 3.1.1 窗體的主要屬性 窗體的屬性決定了窗體的外觀和操作。對象的大部分屬性可用兩種方法來設置:通過屬性窗口設置和通過程序代碼設置。有少量的屬性不能

41、在程序代碼中設置。 (1)Caption 屬性 設置窗體的標題內容。標題內容應概括說明本窗體作用。 (2)MaxButton 屬性和 MinButton 屬性 MaxButton為True,窗體右上角有最大化按鈕;為False時,無最大化按鈕。 MinButton 屬性為True,窗體右上角有最小化按鈕;為False時,無最小化按鈕。 (3)BorderStyle 屬性 決定窗體邊框式樣及窗體是否能調整大小。 (4)BackColor屬性和ForeColor 屬性 BackColor屬性設置窗體的背景顏色;ForColor 屬性設置窗體的前景顏色。窗體的前景顏色是執行Print方法時所顯示文本

42、的顏色。 (5)Height屬性和Width屬性 設置窗體的初始高度和寬度。其單位為Twip。1Twip=1/20點=1/1440英寸=1/567厘米。 (6)Left屬性和Top屬性 用于設置窗體左邊框距屏幕左邊界的距離和窗體頂邊距屏幕頂端的距離。其單位為Twip。 (7)Name(名稱)屬性 設置窗體的名稱,在程序代碼中用這個名稱引用該窗體。新建工程時,窗體的名稱缺省為 Form1;添加第二個窗體,其名稱缺省為 Form2,以此類推。為了便于識別,用戶通常給 Name 屬性設置一個有實際意義的名稱。 (8)Enabled屬性 屬性值為True或False,設置對象是否能夠對用戶產生的事件做

43、出反應。一般在程序中設置,用于臨時屏蔽對窗體或其他控件的的控制。 (9)Moveable屬性 屬性值為True或False,設置是否可以移動窗體。 (10)Visible屬性 屬性值為True或False,設置窗體是否被顯示。用戶可用該屬性在程序代碼中控制窗體的隱現。 (11)Picture屬性 設置在窗體中顯示的圖片。單擊Picture屬性右邊的按鈕,彈出“加載圖片”對話框,用戶可選擇一個圖片文件作為窗體的背景圖片。若在程序中設置該屬性的值,需要使用LoadPicture函數。 (12)WindowState屬性 設置窗體啟動后的大小狀態。它有三個可選值: 0-Normal: 窗體大小由He

44、ight和Width屬性決定。 1-Minimized: 窗體最小化成圖標。 2-Maximized: 窗體最大化,充滿整個屏幕。 在VB中,雖然不同的對象有不同的屬性集合,但有一些屬性,如Name 、Enabled、Visible、Height、Width、Left、Top等,其他控件也具有,且具有相似的作用。在后續的章節中,我們主要介紹各種控件常用的特殊屬性。 3.1.2 事件 窗體最常用的事件有三種:Click(單擊)、DbClick(雙擊)、Load(裝入)。 (1)Click事件 程序運行后,單擊窗體觸發該事件。 (2)DbClick事件 程序運行后,雙擊窗體觸發該事件。 (3)Lo

45、ad事件 Load事件是窗體被裝入內存工作區時觸發的事件。如果這個事件過程存在,就馬上執行它。Load事件過程通常用于啟動程序時對屬性、變量的初始化,裝載數據等。 【例3.1】窗體上無最大化最小化按鈕,程序運行后,在窗體上裝入一幅圖片作為背景;當單擊窗體時,窗體變寬;當雙擊窗體時,則退出。程序運行界面如圖3-2所示。 (a)Load事件事件(b)Click事件事件 圖圖3-2 3-2 例例3.13.1運行界面運行界面 屬性設置如表3-1所示。對象對象屬性屬性設置設置Form1Form1CaptionCaption練習窗體事件練習窗體事件MaxButtonMaxButton FalseFalse

46、MinButtonMinButton FalseFalse表表3-1 3-1 例例3.13.1對象屬性設置對象屬性設置 事件過程如下: Private Sub Form_Load() 裝入圖片 Form1.Picture = LoadPicture(c:picChangcheng.wmf) End Sub Private Sub Form_click() 單擊窗體 Form1.Width = Form1.Width + 1000 End Sub Private Sub Form_DblClick() 雙擊窗體 End End Sub 說明:上機時,可通過查找文件的方法找一個圖片文件,參照本例中

47、的格式代如即可。3.2 命令按鈕 在VB應用程序中,命令按鈕是使用的最多的對象之一,常常用它接受用戶的操作信息,觸發相應的事件過程,以實現指定的功能。 3.2.1 屬性 (1)Caption屬性 設定命令按鈕上顯示的文本。 (2)Default屬性 該屬性用于設置默認命令按鈕。當Default屬性設置為True時,按ENTER鍵相當于用鼠標單擊了該按鈕。 (3)Style 屬性和Picture屬性 命令按鈕上除了可以顯示文字外,還可以顯示圖形。 若要顯示圖形,首先應將Style 屬性設置為1,然后在Picture屬性中設置要顯示的圖形文件。類似的,若要設置命令按鈕的BackColor(背景色)

48、,也應將Style 屬性設置為1。 Style 屬性可設置為: 0-Standard: 標準的,命令按鈕上不能顯示圖形。 1-Graphical:圖形的,命令按鈕上可以顯示圖形,也可以顯示文字。 (4)Value屬性 該屬性只能在程序運行期間引用或設置。True表示被按下,False(默認)表示未被按下。在代碼中可通過設置Value屬性為True,來觸發命令按鈕的Click事件。例如,利用下面代碼,可通過程序來選擇命令按鈕,并觸發命令按鈕的Click事件。 Command2.Value=True 3.2.2 事件 最常用的事件是Click事件。 3.3 標簽 標簽(Label)主要用于顯示不需

49、要用戶修改的文本。所以,標簽可以用來標示窗體及窗體上的對象,如為文本框、列表框等添加描述性的文字,或者作為窗體的說明文字。 3.3.1 屬性 (1)Caption屬性 設置標簽要顯示的內容。它是標簽的主要屬性。 (2)BorderStyle屬性 默認值為0,標簽無邊框;設置為1時,標簽有立體邊框。 (3)Autosize屬性 該屬性用于設置標簽是否自動改變尺寸以適應其內容。設置為True時,隨著Caption的內容變化,自動調整標簽的大小,并且不換行;設置為False時,標簽保持設計時的大小,這時如果內容太長,只能顯示一部分。默認值為False。 (4)Alignment屬性 確定標簽中內容的

50、對齊方式,有三種可選值: 0-Left Juseify:默認值,左對齊。 1-Right Juseify:右對齊。 2-Center:居中對齊。 (5)BackStyle屬性 該屬性用于設置背景是否透明。默認值為1,不透明;設為0時,透明。所謂透明,是指無背景色。 3.3.2 事件 常用Click,DbClick事件。 【例3.2】修改例3.1,在圖片上加提示信息“請單擊圖片”,程序其它功能不變。程序運行界面如圖3-2所示。 圖圖3-3 3-3 例例3.23.2運行界面運行界面 操作如下: 在窗體上添加一個標簽,將其Caption屬性設置為“請單擊圖片”,BackStyle屬性設置為0(透明)

51、,程序代碼不變。 3.4 文本框 文本框(TextBox)在窗體中為用戶提供一個既能顯示文本又能編輯文本的區域 3.4.1 屬性 (1)Text屬性 設置文本框中顯示的內容。它是文本框最主要的屬性。 (2)Locked屬性 設置文本框中的內容是否可編輯。 默認值為False,表示可編輯,當設置為True時,不可編輯,此時文本框的作用相當于標簽。 (3)Maxlength屬性 設置文本框中允許輸入的最大字符數。 如果輸入的字符數超過Maxlength設定的數目后,系統將不接受超出部分的字符,并發出嘟嘟聲。該屬性默認值為0,表示無限制。 (4)MultiLine屬性 決定文本框是否允許接收多行文本

52、。 若設置為True,文本框可接收多行文本,當輸入的文本超出文本框的邊界時,會自動換行。默認值為False,文本框中只能輸入一行文本。 (5)PassWordChar屬性 當MultiLine為False時,該屬性可設置顯示在文本框中的替代符。 例如,PassWordChar設置為“*”,那么無論用戶輸入什么字符,文本框中顯示的只是“*”,但文本框接收的還是用戶實際輸入的字符。設置該屬性主要用于輸入口令。 (6)ScrollBars屬性 決定文本框中是否有滾動條。 只有當MultiLine屬性為True時,文本框才能加滾動條。 3.4.2 事件 文本框除支持Click,DbClick事件,常用

53、的還有Change,LostFocus事件。 1. Change事件 當用戶輸入新內容,或程序對文本框的Text屬性重新賦值,從而改變文本框的Text屬性時觸發該事件。 2. LostFocus事件 當用戶按下鍵時光標離開文本框,或用鼠標選擇其他對象時觸發該事件,稱為“失去焦點”事件。 焦點是對象接收用戶鼠標或鍵盤輸入的能力。當對象具有焦點時,可接收用戶的輸入。通常用該事件過程對文本框中的內容進行檢查和確認。 3.4.3 方法 文本框最常用的方法是SetFocus,使用該方法可把光標移到指定的文本框中,使之獲得焦點。當使用多個文本框時,用該方法可把光標移到所需要的的文本框中。 其使用格式為:

54、對象.SetFocus 【例3.3】程序運行后,隨著用戶的輸入,標簽中同步顯示出用戶對文本框的內容更新的次數。運行效果如圖3-4所示。 圖圖3- 4 3- 4 例例3.3 3.3 運行效果運行效果 (1)界面設計 在窗體上建立一個文本框、一個標簽。設置各對象的屬性,如表3-2所示。 對象對象屬性屬性設置設置Form1Form1 CaptionCaption 文本框應用示例文本框應用示例Text1Text1 texttext 空空 MultiLineMultiLine TrueTrueLabel1Label1 CaptionCaption 空空 BorderStyleBorderStyle 1

55、1 AlignmentAlignment 2 2 FontFont 字體大小取二號字體大小取二號表表3-2 3-2 例例3.33.3對象屬性設置對象屬性設置 (2)編寫事件過程如下: Private Sub Text1_Change() Static i% i = i + 1 Label1.Caption = i End Sub 3.5 賦值語句 賦值語句是VB程序最常用、最基本的語句,它能為變量提供數據。另外,若要在程序代碼中設置對象的屬性,也是使用賦值語句。 賦值語句有兩種格式: 格式1: 變量名=表達式 格式2: 對象名.屬性名=表達式 賦值語句的作用是:首先計算“=”右邊表達式的值,然

56、后將該值賦給“=”左邊的變量或對象的屬性。在格式2中,若對象名省略,則默認對象為當前窗體。 例如: x=2 把2賦給x y=x*3 計算x*3的值,得6,把6賦給y x=x+1 計算x+1的值,得3,把3賦給x a$= Hello 把“Hello”賦給a$ Text1.Text=你好! 把“你好!”賦給Text1的Text屬性 這里還要說明一下賦值語句中的類型問題。通常,在使用時應使表達式值的類型與變量(或對象的屬性)類型相同,以避免出現“類型不匹配”的錯誤。不過,某些情況下,VB容許“=”兩邊類型不相同。 例如: dim x!,y%,z$ x = “12.5” 把數值形式的字符串賦給 數值變

57、量 y=34.24 把單精度數賦給整型變 量,此時截去小數部分 z=6 把整數賦給實型變量 以上三種情況都是賦值相容的。在賦值相容前提下,當“=”兩邊類型不相同時,VB自動將表達式值的類型轉換成“=”左邊變量(或對象的屬性)的類型,這種方式稱為“向左看齊”。上例中,實際賦給x、y、z的值分別是12.5、34、6.0。 【例3.4 】已知三角形三邊a,b,c,的長,求三角形的面積,輸出三條邊長及面積。 分析:應用程序的界面應該能讓用戶輸入三邊的長,程序在接收用戶輸入的數據后,利用數學公式對數據進行計算,并把結果輸出到屏幕上。已知三角形三邊a,b,c,的長,求三角形的面積的公式為: 其中p=(a+

58、b+c)/2。 (1)界面設計 在窗體上建立五個標簽、三個文本框和一個命令按鈕。設置各對象的屬性,如表3-3所示。 對象對象屬性屬性設置設置Form1Form1captioncaption計算三角形面積計算三角形面積Label1Label1captioncaption請輸入三邊請輸入三邊Label2Label2captioncaptiona aLabel3Label3captioncaptionb bLabel4Label4captioncaptionc cLabel5Label5captioncaption空空Text1Text1texttext空空Text2Text2texttext空空T

59、ext3Text3texttext空空Command1Command1captioncaption計算計算表表3-3 3-3 例例3.43.4對象屬性設置對象屬性設置 設計完成的界面如圖3-5所示 圖圖3-5 3-5 例例3.43.4界面界面 (2)編寫事件過程如下: Private Sub Command1_Click() Dim a!, b!, c!, p!, s! a = Text1.Text b = Text2.Text c = Text3.Text p = (a + b + c) / 2 s = Sqr(p * (p - a) * (p - b) * (p - c) Label5.C

60、aption = s End Sub3.6 Print方法 Print是輸出數據的一種重要方法。 3.6.1 Print的格式及功能 格式:對象名.Print 表達式列表。 功能:在對象上輸出表達式的值。 (1)對象名: 可以是Form(窗體)、Debug(立即窗口)、Picture(圖片框)、Printer(打印機)。省略此項,表示在當前窗體上輸出。 例如: Print 23*2=;23*2 在當前窗體上輸出23*2= 46 Picture1.Print Good 在圖片框Picture1上輸出Good Printer.Print Morning 在打印機上輸出Morning (2)表達式列表: 是一個或多個表達式,若為多個表達式,則各表達式之間“

溫馨提示

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

評論

0/150

提交評論