Visual Basic(簡稱VB)是Microsoft公司開發的一種通用的基于對象的程序設計語言,為結構化的、模塊化的、面向對象的、包含協助開發環境的事件驅動為機制的可視化程序設計語言。是一種可用于微軟自家產品開發的語言。
“Visual” 指的是開發圖形用戶界面 (GUI) 的方法——不需編寫大量代碼去描述界面元素的外觀和位置,而只要把預先建立的對象add到屏幕上的一點即可。 “Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 語言,是一種在計算技術發展歷史上應用得最為廣泛的語言。
Visual Basic源自于BASIC編程語言。VB擁有圖形用戶界面(GUI)和快速應用程序開發(RAD)系統,可以輕易的使用DAO、RDO、ADO連接數據庫,或者輕松的創建Active X控件,用于高效生成類型安全和面向對象的應用程序[2] 。程序員可以輕松的使用VB提供的組件快速建立一個應用程序。
vb語言知識點總結
1 第一章知識點
(1) VB的語言特點
可視化開發環境:界面設計所見所得;面向對象程序設計:程序和數據封裝作為一個對象,在工具箱里面的都是一個一個的類,比如commandbutton類,當你把它從工具箱拖出來已經,它就被實例化成了一個對象,名稱叫command1,如果你拖了2個command,就是2個不同的對象;事件驅動編程:VB程序沒有明顯的入口和出口,都在等待用戶或者系統或者代碼觸發某個事件,然后執行事件對應的任務
(2) VB的工作模式
設計模式,運行模式,中斷模式;程序在運行模式是沒有辦法修改代碼和設計界面窗口的。
(3) VB的文件類型
窗體文件frm;程序模塊文件bas;類模塊文件cls;工程文件vbp;工程組文件vbg;資源文件res;保存工程的時候應該同時保存工程文件vbp和窗體文件frm。
(4) VB的窗口
任何的窗口被關閉了找不到了,都應該在視圖菜單下面來尋找,工具箱窗口,代碼窗口,窗體布局窗口,立即窗口(可以在中斷模式下查詢程序運行對象值,ctrl+G打開立即窗口)
2 第二章知識點
(1) 面向對象的基本概念
類:具有類似屬性和方法的對象的抽象,比如大學;對象:類實例化就成為一個對象,每個對象都具有自己的屬性和方法,比如西南財經大學天府學院。屬性:對象的靜態特征,最重要的屬性是name,在VB里面對象的name是不能省略的,而且在程序運行的過程中是不能修改的;事件:人或者系統對對象的作用,對象是被動者,比如load,unload,timer;click等;方法:對象發出的行為,對手是主動者,比如move,show,hide等。
(2) VB的開發流程
第一步分析后畫流程圖
第二步界面設計
第三步編寫代碼
第四步測試運行
3 第三章知識點
(1) VB書寫代碼的格式
VB代碼中不區分字母的大小寫。
同一行可以書寫多條語句,語句間用冒號“:”分隔。
一條語句可以寫在同一行,也可以寫在多行。續行符號是一個空格加下劃線“_”。
注釋語句以Rem開頭,也可以使用單引號“‘”。后者注釋內容可直接出現在相關語句的后面。
VB6中新增了“塊注釋/取消塊注釋”:在代碼模式下,右擊工具欄,在彈出菜單里把“編輯”項選中??
變量和常量的命名規則:有數字,字母,下劃線組成;字母作首字符;不超過255個字符;不能以VB關鍵字和系統常量做名字
(2) VB的數據基本類型
數值類型:
字符串類型:
string 用“”雙引號作為定界符
聲明一個字符串變量,不規定串長:dim s as string
例: dim s as string
S=”中國”
Print len(s) ? 長度為4個字節
S=”abs”
Print len(s) ? 長度為3個字節
聲明一個定長字符串,在后面加 *指定字符串的長度 dim s as string * 8
例:
Dim s as sting * 6
Dim a as integer
S=”12345678”
Print len(s) ? 長度為6個字節
a=len(s)
print len(a) ? 長度為2個字節,如果打印其他類型的長度,則為其數據類型
所占用的字節數
日期類型
用“”雙引號或者# #井號作為定界符
例: dim a as date
A=#4/20/1999#
A=A-10
Print A ? #4/10/1999# 減去的是天數
對象類型
對象類型變量可以用來引用程序中各種對象,對象類型的使用分為聲明,
賦值,代表三步,類似給控件取一個小名
例:
Dim a as commandbutton
Set a=command1
a.caption=”hello” ?等價于command1.caption=”hello”
變體類型
變體型聲明方式 dim c或者dim c as variant
例:
Dim a ,b as double ?a是變體型
變體型在未進行變量賦值前是值是empty
變體型是數據類型根據賦值不同可以改變
例: Dim A
A=”88” ?A是字符串 “88”
A=A+10 ?A的值是98
(3) VB常量的聲明
符號常量聲明:關鍵字是const,必須在聲明的時候進行初始化
符號常量聲明分隱式聲明和顯式聲明
例:
Const a as string=”123” 顯式聲明
Const a =true 隱式聲明
(4) VB變量的聲明
變量聲明:關鍵字是dim,變量必須要定義,再使用
變量聲明分隱式聲明和顯式聲明
例:
Dim a as double
Dim a%,b#
(5) VB運算符
運算符分類
算術運算符:() ^ * / \ mod + -
關系運算符:《 》 = 《= 》= 《》
邏輯運算符:not and or xor eqv imp
運行符優先級
算術運算符》關系運算符》邏輯運算符
優先級的順序:
由上至下對應由高到低,同一行的優先級相同,程序順序執行。
算術運算符(優先級最高)
()
sin cos?
^
* / \
mod
+ -
關系運算符
》 》= 《 《= = 《》
邏輯運算符(優先級最低)
Not
And Or Xor Eqv Imp
運算符
除法/ \ mod :/ 是真正除法,返回商23/5=4.6
\ 是整除 23\5.8=3 23\5.2=4
Mod返回余數 23mod5.8=5 23mod5.2=3 1mod2=1
+號運算符:兩邊都是字符串做字符串連接 “1“+”2“=”12“
一邊是字符串一邊是數值,把字符串轉換成數值再加 1+”2”=3
兩邊都是數值做數值加法 1+2=3
+號的優先級高于& “300”& “123”+200=“300323”
關系運算符:運算結果是true或者false 1《=2 為true
“a”《”b” 比較的是ASCII
“abc” 《“abd” 從首字符依次比較ASCII
邏輯運算符:not 取反
And 取幷 兩個同時為true才為true
Or取或 有一個為true就為true
Xor異或 不同為true,相同為false
Eqv同或 相同為true, 不同為false
imp蘊含 true imp false 為false 其他都為true
(6) VB函數
數學運算函數
abs:取參數絕對值,如果變量未初始化,則為0 abs(-10)=10
int:取整,當為負數的時候,返回小于等于參數的第一個負整數int(-1.1)=-2
fix:取整,當為負數的時候,返回大于等于參數的第一個負整數fix(-1.1)=-1
exp:返回e的多少次方
log:返回參數的自然對數
字符串處理函數
Len:取字符串的長度,len(“abcdefg”)=7 len(“小白”)=4
Trim:去除字符串左右兩邊的空格
String:連續返回多少個字符串首字符 string(3,”abc”)=”aaa”
Lcase:大寫字母變小寫 lcase(“ABcd”)=”abcd”
Ucase:小寫字母變大寫 Ucase(“ABcd”)=”ABCD”
Left:返回字符串左邊起多少個字符,如果個數大于長度全返回
left(“abcdef”,3)=”abc”
Right:返回字符串右邊起多少個字符,如果個數大于長度全返回
right(“abcdef”,3)=”def”
mid:從中間某個位置返回指定長度的字符串
mid(“abcdef”,3,2)=”cd”
instr:返回指定字符串在另一字符串中出現的位置
instr(1,”abcdef”,”de”)=4 instr(4,“abcdef”,”cd”)=0
日期函數
類型轉換函數
其他函數
Cstr:把數值轉化成字符串
Val:把字符串轉化成數值
Rnd:產生隨機數
Int(Rnd()*90+10) 范圍是10-99
Int(Rnd()*99+1) 范圍是1 - 99
4 第四章知識點
(1) inputbox函數
inputbox用于接收用戶的鍵盤數據的輸入,只接收一個數據輸入
inputbox的語法格式:inputbox(“提示信息”,”標題”,”默認值”)
提示信息長度不能超過1024字節
對話框標題如果不寫,默認為工程1,和““空標題不一樣
Inputbox返回的數據類型是string,因此通常返回數值類型的時候需要加
val函數把字符串轉換成數值
(2) msgbox函數
msgbox函數用于進行消息的提示,并且接受用戶的反饋的單擊按鈕信息
msgbox的語法格式:
msgbox(“提示信息”,對話框按鈕組合方式+圖標+默認按鈕,”標題”)
提示信息長度不能超過1024字節
對話框標題如果不寫,默認為工程1,和““空標題不一樣
Msgbox返回的數據類型是integer類型,即用戶單擊了消息框按鈕后返回vbyes,vbno等VB常量,詳細請參考書上對應的表格
(3) msgbox語句
msgbox語句和msgbox函數的相同之處都是給出一個消息提示
msgbox語句和msgbox函數的不同之處是語句沒有返回值,即用戶單擊了消息框按鈕后,也沒有任何的信息返回
其他語法規則,包括對話框的組合方式都和msgbox函數是完全一樣的
(4) print方法
print方法用于在form上或者在打印機上輸出數據
print單獨寫是打印一個空行
print后面加;號是連續在一行輸出
print后面加,號是以14個字符為一個輸出區輸出各表達式
tab(n)是絕對距離
spc(n)是相對距離
6 第六章知識點
類名叫label,實例化對象名字默認叫label1,即name屬性
Caption:顯示標簽的文本內容,例如label1.caption=”歡迎vb”
Backstyle:設置標簽透明效果,0為透明,1為不透明
文本框
類名叫textbox,實例化對象名字默認叫text1,即name屬性
Text:用來顯示或者獲取文本框的內容,例如:text1.text=”12”顯示12到
文本框,a=text1.text獲取文本框輸入的內容
Alignment:文本框的對齊方式
Enable:設置文本框是不是可用
Visible:設置文本框可見與否
Tooltiptext:設置鼠標放置上去后的提示信息
Passwordchar:輸入或者顯示密碼的符號
Maxlength:設置輸入字符的最大長度,為0可以輸入任意長度
Change事件:文本框內容發生變化的時候就觸發
命令按鈕
類名叫commandbutton,實例化對象名默認叫command1,即name屬性
Canel:設置按鈕是否為當前窗體中默認取消按鈕,ESC時觸發
Default:設置按鈕是否為當前窗體默認確定按鈕,ENTER時觸發
計時器
類名叫timer,實例化對象名默認叫timer,即name屬性
Enable:設置文本框是不是可用
Interval:設置計時間隔,單位毫秒
圖形按鈕
類名叫pictureBox,實例化對象名默認叫picture1,即name屬性
Picture:設置該屬性裝載圖片,格式Picture1.picture=loadpicture(“URL”)
單選按鈕
類名叫optionbutton,實例化對象名默認叫option1,即name屬性
Caption:顯示單選按鈕的文本內容
Value:確定單選按鈕是不是被選中,值為true和false
If option1.value=true then
Label1.caption=option1.caption
Elseif option2.value=true then
Label1.caption=option2.caption
End if
復選按鈕
類名叫checkbox,實例化對象名默認叫check1,即name屬性
Caption:顯示復選按鈕的文本內容
Value:確定復選按鈕是不是被選中,值為0和1,2分別表示為未選中,
選中,不可以使用
If check1.value=1 then
Label1.caption=check1.caption
endif
If check2.value=1 then
Label1.caption=check2.caption
End if
滾動條
類名叫scrollBar,實例化對象名默認叫scroll1,即name屬性
Max:滾動條的最大值
Min:滾動條的最小值
Smallchange:單擊滾動條箭頭時value的變化量
Largechange:單擊滾動條空白時value的變化量
Value:滑動塊所處的位置
Scroll事件:滑動塊實時移動的時候一直觸發
Change:單擊空白,單擊箭頭,滑動塊移動鼠標釋放的時候觸發一次
列表框
類名叫listbox,實例化對象名默認叫list1,即name屬性
List:列表框第i-1項的內容,存放數據的地方,訪問用下標list(1)
Listcount:表示列表框的列表項數
Listindex:選中項下表,例:被選中項內容:list1.list(list1.listindex)
Selected:下標表示項選中與沒選中的狀態
Additem:在列表框指定位置插入一行文本,例:插入到最后
List1.additem “aaaa” ,list1.listcount-1
Removeitem:刪除列表項,例:刪除當前選中項
List1.remveitem list1.listindex
Clear:清空列表框
組合框
類名叫combobox,實例化對象名默認叫combo1,即name屬性
組合框是組合的textbox和listbox,所以有這兩個控件共同的屬性
使用的時候只是對象名要變成combo1,其他屬性參考list
7 第七章知識點
重點是要能寫程序,靈活應用
程序設計有三種結構,順序結構,條件結構,循環結構
條件結構
If 條件 then 任務 ,end if省略
If 條件 then 任務 else 任務 ,end if省略
If 條件 then
任務
Endif
If 條件
then
任務
Else
任務
Endif
If 條件 then
任務
Elseif 條件 then
任務
Elseif 條件 then
任務
Elseif 條件 then
任務
Endif
只要有一個條件滿足,后面都不會判斷
Select case 變量
Case 值
任務
Case 值列表
任務
Case 值范圍
任務
Case 條件表達式
任務
End select
只要有一個條件滿足,后面都不會判斷
循環結構
For型循環
For 變量=初值 to 終值 step 步長
任務
Next 變量
退出循環的時候變量要多加一次1
例子for i=1 to 100 step 1
S=s+i
Next i
While型循環
變量=初值
While 條件
任務
變量=變量+步長
Wend
例子:while i《=100
S=s+i
i=i+1
wend
Do型循環
Do while 條件
任務
Loop
例子:Do while i《=100
S=s+i
I=i+1
Loop
Do until 條件
任務
Loop
例子: Do until i》100
S=s+i
I=i+1
Loop
Do
任務
Loop while 條件
例子: Do
S=s+i
I=i+1
Loop while i《=100
Do
任務
Loop until 條件
例子: Do
S=s+i
I=i+1
Loop until i》100
Goto 語句
語句標號:任務
If 條件 then
Goto 語句標號
Endif
例子:a:s=s+i
I=i+1
If i》=100 then
Goto a
End if
Exit語句強制退出循環
8 第八章知識點
數組的聲明
Dim 數組名(下標 to 上標)as 數據類型
Dim a(1 to 10) as integer 長度為10
Dim b(5) as integer 長度為6,下標省略
如果想讓默認下標從1開始,加option base 1
數組的操作:賦值,引用,輸入,輸出,復制
在對數據進行操作的時候要保證數組下標不溢出
輸入10個數,找最大最小平均,冒泡排序
Private Sub Command1_Click()
Dim (1 To 10) As Integer
Dim i As Integer
Dim j As Integer
Dim max As Integer
Dim min As Integer
Dim avg As Integer
Dim sum As Integer
For i = 1 To 10
a(i) = Val(InputBox(“”, “”, “1”))
Print a(i);
Next i
max = a(1)
min = a(2)
For i = 1 To 10
If max 《 a(i) Then
max = a(i)
End If
If min 》 a(i) Then
min = a(i)
End If
sum = sum + a(i)
Next i
avg = sum / 10
Print “max=”; max; “min=”; min; “avg=”; avg;
For i = 1 To 9
For j = 1 To 10 - i
If a(j) 》 a(j + 1) Then
t = a(j)
a(j) = a(j + 1)
a(j + 1) = t
End If
Next j
Next i
For i = 1 To 10
Print a(i);
Next i
End Sub
-
VB語言
+關注
關注
1文章
18瀏覽量
9710
發布評論請先 登錄
相關推薦
評論