vb編程入門(mén)教程(一文學(xué)會(huì)VB編程)
給VB程序加菜單圖標(biāo):
在VB里面加圖標(biāo)比較麻煩,你需要用到API函數(shù)進(jìn)行調(diào)用,參數(shù)不好理解:
給菜單添加圖標(biāo)的API函數(shù):GetMenu、GetSubMenu、GetMenuItemID、SetMenuItemBitmaps。
寫(xiě)代碼前你要把ImageList控件放到窗體上,如果工具欄中找不到它,通過(guò)“工程”菜單下的“部件”進(jìn)行添加:
將ImageList控件添加到窗體后,右鍵屬性彈出窗口,插入圖片添加你需要用的小圖像:
編寫(xiě)代碼:
代碼解釋?zhuān)?/p>
前面你要聲明幾個(gè)API函數(shù)
GetMenu:獲得彈出菜單的句柄,判斷窗體上到底有沒(méi)有菜單控件,否則返回Null值,hwnd參數(shù)用來(lái)指定有菜單的窗口。
GetSubMenu:獲得彈出菜單的句柄,hmenu參數(shù)用來(lái)指定父菜單,npos菜單用來(lái)指定彈出菜單在主菜單中的位置。
SetMenuItemBitmaps:把位圖搞過(guò)來(lái),wflags參數(shù)決定npos參數(shù)指定的是ID還是順序編號(hào),hBitmapUnchecked和hBitmapChecked指定菜單項(xiàng)的位圖。
如果知道這幾個(gè)函數(shù)的功能和參數(shù)的作用就不難理解窗體程序中加載的代碼了:
menu1 = GetMenu(Me.hwnd):判斷有沒(méi)有菜單
menuid = GetMenuItemID(GetSubMenu(menu1, 0), i - 1):獲取菜單的ID數(shù)值
SetMenuItemBitmaps menu1, menuid, bitmap, ImageList1.ListImages(i).Picture, ImageList1.ListImages(i).Picture:將圖像通過(guò)FOR循環(huán)依次賦值給這個(gè)菜單
運(yùn)行:
控件用法:
在Visual Basic環(huán)境下,TextBox控件主要的作用是接收用戶(hù)輸入、編輯和修改的內(nèi)容,顯示程序輸出的信息,體現(xiàn)了程序與用戶(hù)的交互性。
實(shí)現(xiàn):
登錄系統(tǒng)需要輸入用戶(hù)名和密碼,使用TextBox控件限制用戶(hù)輸入用戶(hù)名和密碼的字符數(shù)量,限制密碼框中輸入的字符數(shù)量不超過(guò)6位,當(dāng)用戶(hù)輸入的數(shù)量超限時(shí),則彈出消息框加以提示。
實(shí)現(xiàn)步驟:
1、創(chuàng)建一個(gè)新窗體默認(rèn)名稱(chēng)Form1
2、添加PictureBox控件,Picture屬性設(shè)置為
3、在窗體上添加兩個(gè)TextBox控件,對(duì)這兩個(gè)控件的MaxLength屬性進(jìn)行設(shè)置,,密碼框的PasswordChar屬性設(shè)置為“*”:
4、在窗體上放置兩個(gè)Label控件:
5、在窗體加載事件中編寫(xiě)代碼:
6、運(yùn)行程序,向用戶(hù)名框內(nèi)輸入字符:
輸入字符密碼:
在學(xué)生管理系統(tǒng)中顯示學(xué)號(hào)時(shí),要求文本框中顯示的學(xué)號(hào)要體現(xiàn)入學(xué)日期、班級(jí)信息和學(xué)生編號(hào)
實(shí)現(xiàn)步驟
1、創(chuàng)建一個(gè)新窗體默認(rèn)名稱(chēng)Form1
2、在窗體上添加Frame控件,你可以在它里面放置其它控件,這樣使得它們成為一個(gè)區(qū)域的整體,窗體設(shè)計(jì)中常常用到這個(gè)控件,通過(guò)它可以創(chuàng)建控件組:
3、修改Frame控件的Caption屬性,并在Frame控件中添加四個(gè)Label控件和四個(gè)TextBox控件,并分別對(duì)四個(gè)Label控件的Caption屬性進(jìn)行相應(yīng)修改:
4、在窗體上放置兩個(gè)CommandButton控件,通過(guò)點(diǎn)擊“確定”按鈕,實(shí)現(xiàn)學(xué)號(hào)自動(dòng)顯示,單擊“退出”按鈕,實(shí)現(xiàn)結(jié)束程序:
5、添加程序代碼
Private Sub Command1_Click() Dim a, b, c a = Text1.Text b = Text2.Text c = Text3.Text Text4.Text = Trim(a) & Trim(b) & Trim(c)End SubPrivate Sub Command2_Click() EndEnd SubPrivate Sub Form_Load() Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = ""End Sub6、運(yùn)行程序,輸入入學(xué)日期、編入班級(jí)和編號(hào),自動(dòng)生成學(xué)號(hào)
點(diǎn)擊確定按鈕
實(shí)現(xiàn)了學(xué)號(hào)的自動(dòng)生成,實(shí)際上我們可以通過(guò)讀取學(xué)生信息文件,將所有的學(xué)生學(xué)號(hào)進(jìn)行自動(dòng)生成并保存到文件中,可以保存成文本格式文件,也可以保存成表格文件,還可以保存成數(shù)據(jù)庫(kù)格式文件。
應(yīng)用實(shí)例:在添加學(xué)生信息時(shí),當(dāng)添加到學(xué)生所在地時(shí),不需要手動(dòng)輸入,可以直接從列表中進(jìn)行選擇
實(shí)現(xiàn)步驟
再添加一個(gè)Label控件、一個(gè)文本框控件和一個(gè)ComboBox控件,Label控件的內(nèi)容為“學(xué)生所在省份”,ComboBox控件的下拉列表框?qū)⑹》菝Q(chēng)送給文本框控件:
代碼:
Private Sub Form_Load() Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = ""End SubPrivate Sub Combo1_Click() Text5.Text = Combo1.TextEnd Sub運(yùn)行程序,輸入學(xué)生信息,在下拉列表框中選擇學(xué)生的住所:
應(yīng)用實(shí)例4:
不允許用戶(hù)在文本框中輸入數(shù)字信息,如果用戶(hù)在文本框中輸入數(shù)字信息,則自動(dòng)進(jìn)行刪除操作。
實(shí)現(xiàn)步驟:
在窗體中放置一個(gè)Label控件和一個(gè)TextBox控件,并將TextBox控件的MultiLine屬性設(shè)置為T(mén)rue,ScrollBars屬性設(shè)置為2-Vertical:
代碼:
Private Sub Text1_Change() Dim j, c If Text1.Text = "" Then Text1.SetFocus Exit Sub Else j = Len(Text1.Text) Do While (j <> 0) c = Left(Right(Text1.Text, j), 1) If IsNumeric(c) Then Text1.Text = Left(Text1.Text, Len(Text1.Text) - j) + Right(Text1.Text, j - 1) Text1.SelStart = Len(Text1.Text) End If j = j - 1 Loop End IfEnd Sub這里面用到了幾個(gè)函數(shù):
Len(Text1.Text):求取文本的長(zhǎng)度
Left(Right(Text1.Text, j), 1):從左邊和右邊截取字符
IsNumeric(c):判斷是否為數(shù)字
還用到了Do While…loop循環(huán)語(yǔ)句
運(yùn)行程序,你輸入數(shù)字,則文本框直接過(guò)濾掉,輸不進(jìn)去:
結(jié)語(yǔ):如果想學(xué)更多,請(qǐng)關(guān)注轉(zhuǎn)發(fā)收藏
轉(zhuǎn)載請(qǐng)注明來(lái)自夕逆IT,本文標(biāo)題:《vb編程入門(mén)教程(一文學(xué)會(huì)VB編程)》

還沒(méi)有評(píng)論,來(lái)說(shuō)兩句吧...