




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
VisualBasic程序設(shè)計(jì)12/24/20221VisualBasic程序設(shè)計(jì)12/16/20221第二講VB可視化編程初步12/24/20222第二講VB可視化編程初步12/16/20222[內(nèi)容簡(jiǎn)介]本章以一個(gè)簡(jiǎn)單的時(shí)鐘應(yīng)用程序開(kāi)發(fā)為主線:詳細(xì)介紹窗體、文本框、標(biāo)簽和命令按鈕等常用控件事件和事件過(guò)程以及事件驅(qū)動(dòng)程序設(shè)計(jì)的基本原理MsgBox函數(shù)、賦值語(yǔ)句的使用方法。通過(guò)本章的學(xué)習(xí),你將熟悉VisualBasic開(kāi)發(fā)應(yīng)用程序的全過(guò)程,領(lǐng)略到VB可視化編程的魅力,為進(jìn)一步深入學(xué)習(xí)奠定基礎(chǔ)。12/24/20223[內(nèi)容簡(jiǎn)介]本章以一個(gè)簡(jiǎn)單的時(shí)鐘應(yīng)用程序開(kāi)發(fā)為主線:12/1[學(xué)習(xí)目標(biāo)]
掌握VB應(yīng)用程序開(kāi)發(fā)的一般步驟。掌握命令按鈕、文本框和標(biāo)簽的使用和MsgBox函數(shù)的用法。理解賦值語(yǔ)句、變量的概念,理解對(duì)象、屬性、方法和事件的概念及其之間的區(qū)別和聯(lián)系,理解事件驅(qū)動(dòng)的原理。了解時(shí)鐘程序的工作原理。
12/24/20224[學(xué)習(xí)目標(biāo)]掌握VB應(yīng)用程序開(kāi)發(fā)的一般步驟。12/16/22.1“時(shí)鐘程序”任務(wù)在實(shí)際工作中,為了準(zhǔn)確的控制時(shí)間,經(jīng)常需要用到計(jì)時(shí)器,現(xiàn)在我們就來(lái)創(chuàng)建一個(gè)倒計(jì)時(shí)的簡(jiǎn)單應(yīng)用程序。該程序的功能是:當(dāng)在文本框內(nèi)輸入倒計(jì)時(shí)的分鐘數(shù)后,單擊“開(kāi)始”按鈕就開(kāi)始倒計(jì)時(shí),倒計(jì)時(shí)結(jié)束時(shí),彈出“時(shí)間到!”的信息框。
12/24/202252.1“時(shí)鐘程序”任務(wù)在實(shí)際工作中,為了準(zhǔn)確的控制時(shí)間,經(jīng)任務(wù)描述
界面設(shè)計(jì)
代碼設(shè)計(jì)
保存和運(yùn)行程序
編譯與打包
安裝運(yùn)行
VB應(yīng)用程序開(kāi)發(fā)
的一般步驟
時(shí)鐘程序任務(wù)時(shí)鐘程序任務(wù)任務(wù)描述程序運(yùn)行:出現(xiàn)輸入分鐘數(shù)時(shí)間到:出現(xiàn)12/24/20226任務(wù)描述
界面設(shè)計(jì)
代碼設(shè)計(jì)
保存和運(yùn)行程序
編譯與打包
安2.1.1任務(wù)描述啟動(dòng)界面
12/24/202272.1.1任務(wù)描述啟動(dòng)界面12/16/20227輸入1分鐘數(shù)字界面
12/24/20228輸入1分鐘數(shù)字界面12/16/20228倒計(jì)時(shí)進(jìn)行中界面
12/24/20229倒計(jì)時(shí)進(jìn)行中界面12/16/20229倒計(jì)時(shí)結(jié)束界面
12/24/202210倒計(jì)時(shí)結(jié)束界面12/16/2022102.1.2界面的設(shè)計(jì)
1新建工程并創(chuàng)建窗體啟動(dòng)VB在“新建工程“對(duì)話框中,選擇“標(biāo)準(zhǔn)EXE”單擊“打開(kāi)”。2向窗體中添加控件調(diào)整窗體的大小為合適,向窗體中添加:一個(gè)標(biāo)簽、一個(gè)文本框、一個(gè)命令按鈕和一個(gè)計(jì)時(shí)器控件。12/24/2022112.1.2界面的設(shè)計(jì)1新建工程并創(chuàng)建窗體12/16/2
通過(guò)鼠標(biāo)單擊“工具箱”中的控件,在窗體上劃出相應(yīng)的控件。12/24/202212通過(guò)鼠標(biāo)單擊“工具箱”中的控件,在窗體上劃出相應(yīng)的控件。13設(shè)置對(duì)象屬性(1)單擊Form1窗體,選定它。在屬性窗口中選中Form1,將Caption的屬性改為“倒計(jì)時(shí)器”(2)單擊窗體上的“Label1”控件,將Caption的屬性改為清輸入倒計(jì)時(shí)的分鐘數(shù),將Autosize屬性改為true(3)將命令按鈕command1的Caption屬性改為“開(kāi)始“。(4)將text1的Alignment屬性改為“2-center”.(5)將計(jì)時(shí)器控件timer的Interval的屬性值設(shè)為1000(1秒),Enabled屬性設(shè)為False.12/24/2022133設(shè)置對(duì)象屬性(1)單擊Form1窗體,選定它。在屬性窗口2.1.3代碼設(shè)計(jì)(1)代碼編輯器“通用”區(qū)代碼DimmAsLong‘聲明一個(gè)變量(2)Command1控件代碼PrivateSubCommand1_Click()'使計(jì)時(shí)器控件開(kāi)始工作Timer1.Enabled=True
'將分鐘數(shù)轉(zhuǎn)換為秒數(shù),并保存在m變量中m=Val(Text1.Text)*60
'改變標(biāo)簽控件的標(biāo)題Label1.Caption="現(xiàn)在開(kāi)始倒計(jì)時(shí)"
'使用命令按鈕不可見(jiàn)Command1.Visible=FalseEndSub12/24/2022142.1.3代碼設(shè)計(jì)(1)代碼編輯器“通用”區(qū)代碼12/162.1.3代碼設(shè)計(jì)(3)Timer1控件代碼PrivateSubTimer1_Timer()'當(dāng)Timer1.Enabled=Ture是,本程序每秒自動(dòng)執(zhí)行一次
'每運(yùn)行一次,就將m變量的值減1秒m=m–1
Ifm<0Then'如果倒計(jì)時(shí)結(jié)束(即m=0)則:Timer1.Enabled=False'關(guān)閉計(jì)時(shí)器MsgBox"時(shí)間到!",0,"倒計(jì)時(shí)"Label1.Caption="請(qǐng)輸入計(jì)時(shí)的分鐘數(shù)"Text1.Text=""'清空文本框Command1.Visible=True''使命令按鈕可見(jiàn)Else'否則顯示倒計(jì)時(shí)數(shù)Text1.Text=mEndIfEndSub12/24/2022152.1.3代碼設(shè)計(jì)(3)Timer1控件代碼12/16/22.1.4保存和運(yùn)行程序1.保存工程單擊“文件”菜單中的“保存工程”2.運(yùn)行程序單擊工具欄中的啟動(dòng)按鈕,或者按F5鍵開(kāi)始運(yùn)行該應(yīng)用程序。12/24/2022162.1.4保存和運(yùn)行程序1.保存工程12/16/20222.1.5編譯與打包1.編譯應(yīng)用程序單擊“文件”菜單中的“生成Timer.exe”選項(xiàng)2.打包創(chuàng)建一個(gè)安裝程序來(lái)發(fā)布文件Package&Deployment向?qū)?2/24/2022172.1.5編譯與打包1.編譯應(yīng)用程序12/16/20222.1.6VB應(yīng)用程序開(kāi)發(fā)的一般步驟1.設(shè)計(jì)應(yīng)用程序界面2.設(shè)置對(duì)象屬性3.編寫代碼4.保存和運(yùn)行工程5.編譯與打包6.安裝運(yùn)行12/24/2022182.1.6VB應(yīng)用程序開(kāi)發(fā)的一般步驟1.設(shè)計(jì)應(yīng)用程序2.2程序代碼分析2.2.1變量是指在程序運(yùn)行過(guò)程中其值可以改變的那些量。當(dāng)執(zhí)行了Dim語(yǔ)句后,VB程序就會(huì)在計(jì)算機(jī)內(nèi)存中預(yù)留一個(gè)區(qū)域,準(zhǔn)備存放數(shù)據(jù)。變量命名規(guī)則:第一個(gè)字符必須是字母其它字符只能是字母、數(shù)字、下劃線最后一個(gè)字符可以是類型說(shuō)明符變量名最長(zhǎng)可達(dá)255個(gè)字符不能與保留字重名,如Input盡量使用有意義的名字12/24/2022192.2程序代碼分析2.2.1變量12/16/202219聲明變量隱式聲明:變量不經(jīng)聲明直接使用,此時(shí)該變量將被賦予缺省的類型和值
如:class=3'class為整型
name="張三"'name為字符串顯式聲明:變量聲明后再使用
強(qiáng)制顯式聲明工具/選項(xiàng)/編輯器/要求變量聲明代碼編輯器/對(duì)象列表中選通用,在聲明區(qū)加入聲明optionexplicit12/24/202220聲明變量12/16/202220使用Dim語(yǔ)句聲明變量
一般格式:Dim變量名As變量類型
例:
DimnumAsInteger
'聲明num為整型變量
DimtestAslong,todayAsDate '同時(shí)聲明test為長(zhǎng)整型,today為日期型
DimstrAsstring,value
'聲明str為一變長(zhǎng)字符串,value為不定類型12/24/202221使用Dim語(yǔ)句聲明變量
一般格式:Dim變量名As全局變量的聲明
全局變量是可以在工程中的所有程序模塊使用的變量。使用關(guān)鍵字Public和Global
如:Publictest1AsInteger
Globaltest2AsByte12/24/202222全局變量的聲明
12/16/202222表VB的標(biāo)準(zhǔn)數(shù)據(jù)類型數(shù)據(jù)類型類型名稱類型聲明字符所占字節(jié)字節(jié)型Byte10~255布爾型Boolean2整型Interger%2長(zhǎng)整型Long&4單精度型Single!4雙精度型Double#8貨幣型Currency@8日期型Date8對(duì)象型Object4變長(zhǎng)字符串型String$字符串長(zhǎng)度,1字節(jié)/字符定長(zhǎng)字符串型String*Num$Num可變類型Variant不定12/24/202223表VB的標(biāo)準(zhǔn)數(shù)據(jù)類型數(shù)據(jù)類型類型名稱類型聲所占字節(jié)2.2.2賦值語(yǔ)句
格式:變量名=表達(dá)式
或?qū)ο竺?屬性名=表達(dá)式注意:1、不要把賦值號(hào)“=”與數(shù)學(xué)中的等號(hào)相混淆m=m-12、賦值號(hào)“=”左邊必須是變量名或?qū)ο髮傩?,?”右邊是表達(dá)式,其值可以是常量、變量、函數(shù)或是它們的混合運(yùn)算式m=val(text1.text)*60z=x+yb=1c=b*2+2label1.caption=“現(xiàn)在開(kāi)始倒計(jì)時(shí)”12/24/2022242.2.2賦值語(yǔ)句
格式:12/16/2022242.2.3MsgBox語(yǔ)句和函數(shù)的使用
MsgBox函數(shù)的格式:變量=msgbox(提示信息[,對(duì)話框類型[,對(duì)話框標(biāo)題]])MsgBox命令語(yǔ)句的格式: msgbox提示信息[,對(duì)話框類型[,對(duì)話框標(biāo)題]]MsgBox函數(shù)各參數(shù)使用與MsgBox語(yǔ)句函數(shù)相同,但是MsgBox語(yǔ)句沒(méi)有返回值。12/24/2022252.2.3MsgBox語(yǔ)句和函數(shù)的使用12/16/20參數(shù)說(shuō)明:(1)“提示信息”指定在對(duì)話框中出現(xiàn)的文本。(2)“對(duì)話框標(biāo)題”指定了對(duì)話框的標(biāo)題。(3)“對(duì)話框類型”是可選項(xiàng),用來(lái)指定對(duì)話框中出現(xiàn)的按鈕和圖標(biāo),見(jiàn)(p32表2.1、表2.2、表2.3),該參數(shù)的值有三類數(shù)值相加產(chǎn)生,這三類數(shù)值分別表示按鈕的類型、顯示圖標(biāo)的種類和默認(rèn)按鈕的位置。msgbox“時(shí)間到!”,0,”倒計(jì)時(shí)”(4)函數(shù)返回值見(jiàn)p32表2.412/24/202226參數(shù)說(shuō)明:12/16/202226編寫程序利用MsgBox函數(shù)創(chuàng)建對(duì)話框
PrivateSubForm_Click()msgtitle$="考生登錄信息提示"msg1$="準(zhǔn)考證號(hào)輸入有誤,請(qǐng)重新輸入正確的號(hào)碼!"w=MsgBox(msg1$,37,msgtitle$)PrintwEndSub12/24/202227編寫程序利用MsgBox函數(shù)創(chuàng)建對(duì)話框PrivateSu例如:執(zhí)行下列語(yǔ)句privatesubcommand1_click()msgbox(“除數(shù)不能為0!”,vbokcancel,”輸入數(shù)據(jù)錯(cuò)誤”)endsubP33例如:執(zhí)行下列語(yǔ)句privatesubcommand1_click()a=msgbox(“密碼不正確”,2+32+0,”標(biāo)題”)ifa=3thenend‘如果選擇了“終止”按鈕則程序結(jié)束endifendsubP3312/24/202228例如:執(zhí)行下列語(yǔ)句例如:執(zhí)行下列語(yǔ)句12/16/202228例如:執(zhí)行下列語(yǔ)句privatesubcommand1_click()msgbox“密碼不正確,”+chr(13)+”請(qǐng)重新輸入!”endsubP3312/24/202229例如:執(zhí)行下列語(yǔ)句12/16/2022292.3窗體及基本控件
2.3.1對(duì)象的概念、屬性、事件及方法1對(duì)象的概念簡(jiǎn)單的說(shuō),對(duì)象就是代碼和數(shù)據(jù)的封裝體。VB中,我們將窗體、標(biāo)簽、文本框、命令按鈕和時(shí)鐘控件等都可以理解為對(duì)象。2屬性屬性是一個(gè)對(duì)象的基本特征,每一個(gè)對(duì)象都有自己的屬性。常見(jiàn)的對(duì)象的屬性有標(biāo)題(Caption)、名稱(mane)、顏色(color)、字體(font)、是否可見(jiàn)(Visible)等。12/24/2022302.3窗體及基本控件2.3.1對(duì)象的概念、屬性、事件及各屬性通常都有默認(rèn)值,如果不改變采用默認(rèn)值。(1)在設(shè)計(jì)階段,通過(guò)屬性窗口來(lái)改變各屬性值。(2)在程序代碼中,使用賦值語(yǔ)句設(shè)置對(duì)象的屬性格式:對(duì)象名.屬性名=屬性值例如:Label1.Caption=”現(xiàn)在開(kāi)始倒計(jì)時(shí)”12/24/202231各屬性通常都有默認(rèn)值,如果不改變采用默認(rèn)值。12/16/203方法一般說(shuō),方法就是要執(zhí)行的動(dòng)作,可理解為VB提供的一種特殊的過(guò)程和函數(shù),已將一些通用的函數(shù)和過(guò)程編寫好并封裝起來(lái),如:打?。╬rint)、顯示窗體(show)、清除(cls)和移動(dòng)(move)等調(diào)用對(duì)象的方法格式為:對(duì)象名.方法名例如:form1.print“你好!”4事件事件就是在對(duì)象上發(fā)生的事情,在VB中,系統(tǒng)是預(yù)先為每個(gè)對(duì)象定義好了一系列事件.例如:?jiǎn)螕羰录?click)、雙機(jī)事件(dblclick)、裝入事件(load)、改變事件(change)和鼠標(biāo)移動(dòng)事件(mousemove)等.鼠標(biāo)單擊(事件)命令按鈕(對(duì)象)調(diào)用打?。ǚ椒ǎ?/p>
12/24/2022323方法12/16/2022322.3.2窗體(Form)窗體的結(jié)構(gòu)12/24/2022332.3.2窗體(Form)窗體的結(jié)構(gòu)12/16/202232.3.2窗體
窗體(Form)是用戶界面最基本的構(gòu)造模塊,也是創(chuàng)建應(yīng)用程序所使用的主要對(duì)象之一。窗體有自己的屬性、事件和方法,以便控制窗體的外觀和行為。窗體又是其他對(duì)象的載體和容器,幾乎所有的控件都是在窗體上的。窗體運(yùn)行以后,就是應(yīng)用程序的窗口。12/24/2022342.3.2窗體窗體(Form)是用戶界面最基本的構(gòu)造模塊1窗體的基本屬性設(shè)置窗體的屬性有兩種方法,一種使用屬性窗口,另一種是在代碼編輯器中使用代碼命令。常見(jiàn)的窗體屬性有以下幾種:(1)Name屬性用于設(shè)置窗體名稱,默認(rèn)名稱為Form1,Name屬性只能在屬性窗口中設(shè)置。(2)Caption屬性用于設(shè)置顯示在標(biāo)題欄上的窗體的標(biāo)題,在屬性窗口和代碼編輯器均可設(shè)置。其默認(rèn)值同窗口名稱相同。如:窗體名稱.Caption=”標(biāo)題”12/24/2022351窗體的基本屬性12/16/202235(3)MaxButton和MinButton屬性各有兩個(gè)屬性True和False,分別表示標(biāo)題欄上是否有最大化和最小化按鈕.(4)BorderStyle邊框樣式屬性表2.5所示(5)Picture屬性設(shè)置窗體上要顯示的圖片,可以用語(yǔ)句:對(duì)象.picture=loadpicture(“文件名”)(6)Icon屬性用于設(shè)置窗體標(biāo)題欄上的圖標(biāo).(7)visible屬性用于設(shè)置窗體是否可見(jiàn).(8)WindowsState屬性用來(lái)設(shè)置窗體運(yùn)行時(shí)窗體的顯示狀態(tài)0-Normal,1-Minimized,2-Maximized12/24/202236(3)MaxButton和MinButton屬性12/162窗體的常用方法
(1)show方法用于快速先是一窗體,與窗體的visible屬性設(shè)置位為true一樣.Form1.showForm1.visible=true(2)Hide方法其功能是隱藏窗體,與窗體的visible屬性設(shè)置位為false一樣Form1.HideForm1.visible=false(3)print方法用于在窗體或圖片框上輸出文本privatesubform_load()dbug.print“print方法可以在窗體上打印文本”endsub.12/24/2022372窗體的常用方法(1)show方法12/16/2(4)cls方法用于清除運(yùn)行時(shí)在窗體和圖片框中顯示的文本和圖片.picture.cls‘清除圖片框中的圖片cls‘清除窗體上的文本(5)move方法
將窗體已到指定位置,如:form1.move(0,0)將窗體一到左上角。
12/24/202238(4)cls方法12/16/2022383窗體的常用事件
窗體的常用事件有(通過(guò)代碼編輯器)(1)click單擊事件單擊窗體是發(fā)生(2)DblClick事件雙擊窗體是發(fā)生。(3)load事件裝在窗體是發(fā)生。(4)Unload事件當(dāng)單擊窗體上的”關(guān)閉”和或使用Unload語(yǔ)句時(shí)觸發(fā)該事件.(5)Activate和DeActivate事件當(dāng)一個(gè)窗體變成活動(dòng)窗體時(shí),就會(huì)觸發(fā)Activate事件.當(dāng)窗體不再是活動(dòng)窗體時(shí)就會(huì)觸發(fā)DeActivate事件12/24/2022393窗體的常用事件窗體的常用事件有(通過(guò)代碼編輯器)14窗體事件演示程序
事例:設(shè)計(jì)一窗體,是標(biāo)題欄上無(wú)最大化和最小化按鈕;運(yùn)行后將窗體的顏色設(shè)置為黃色;單機(jī)窗體時(shí)窗體變寬;雙擊窗體時(shí)退出.12/24/2022404窗體事件演示程序12/16/2022402.3.3命令按鈕
其主要功能是通過(guò)命令按鈕來(lái)調(diào)用Click事件過(guò)程。控制開(kāi)始、中斷、結(jié)束一個(gè)進(jìn)程。1、常用屬性
Enabled:允許程序在運(yùn)行時(shí)使窗體和控件成為有效或無(wú)效
object.Enable[=boolean]
Visible:允許在程序運(yùn)行時(shí)隱藏一個(gè)對(duì)象
object.Visible[=booleanStyle:設(shè)置按鈕外觀。0為標(biāo)準(zhǔn)Windows風(fēng)格,1為允許帶有自定義圖片
Picture:Style為1時(shí),指定粘貼到按鈕上的圖形文件Default:屬性為True時(shí),指定為窗體缺省按鈕Cancel:屬性為True時(shí),指定為窗體缺省取消按鈕
12/24/2022412.3.3命令按鈕12/16/202241例如:OptionExplicitPrivateSubForm_Load()Text1.Text=""Command1.Caption="save"EndSubPrivateSubText1_Change()IfText1.Text=""ThenCommand1.Enabled=FalseElseCommand1.Enabled=TrueEndIfEndSub12/24/202242例如:12/16/2022422、常用方法SetFocus方法3、常用事件Click(單擊)Click事件,以下情況可發(fā)生Clicl事件:(1)在按鈕上單擊鼠標(biāo)。(2)焦點(diǎn)在按鈕上,按空格鍵或回車鍵。(3)在代碼中將按鈕Value屬性設(shè)置為True(4)對(duì)于取消按鈕按Esc鍵(5)在Caption屬性中用&符號(hào)鏈接一訪問(wèn)鍵,在運(yùn)行時(shí)按Ali+訪問(wèn)鍵。12/24/2022432、常用方法12/16/2022432.3.4標(biāo)簽
標(biāo)簽現(xiàn)實(shí)不能編輯的信息。1常用屬性(1)AutoSize當(dāng)值為true時(shí)自動(dòng)調(diào)節(jié)內(nèi)容大小以適應(yīng)其內(nèi)容。當(dāng)值為false時(shí),不能改變大小。(2)Alignment屬性標(biāo)簽內(nèi)文本的對(duì)齊方式,標(biāo)2.7所示(3)BordeStyle屬性標(biāo)簽的邊框,默認(rèn)值為0,無(wú)邊框。屬性設(shè)為1右邊框。
12/24/2022442.3.4標(biāo)簽標(biāo)簽現(xiàn)實(shí)不能編輯的信息。12/16/202(4)Backstyle屬性用來(lái)設(shè)置標(biāo)簽是否透明,0透明,1不透明,默認(rèn)值為1。(5)wordwrap屬性
用來(lái)設(shè)置標(biāo)簽中的內(nèi)容是否能夠顯示多行。缺省為false,設(shè)為true可顯示多行。
2常用方法
常用方法有move方法實(shí)現(xiàn)控件的移動(dòng)。
12/24/202245(4)Backstyle屬性12/16/202245其他用法用標(biāo)簽來(lái)顯示時(shí)間
Label1.Caption=Time在標(biāo)簽中同時(shí)顯示兩行以上的字符串
Label1.Caption=Time&Chr(13)&Chr(10)&Date12/24/20224612/16/2022462.3.5文本框(Textbox)1.常用屬性(1)Text屬性(2)MultiLine屬性MultiLine屬性為TrueMultiLine屬性為False12/24/2022472.3.5文本框(Textbox)1.常用屬性Multi2.3.5文本框(Textbox)1.常用屬性(3)PassWordChar(a)(b)12/24/2022482.3.5文本框(Textbox)1.常用屬性(a)(b2.3.5文本框
文本框控件一般用于接收用戶輸入信息,用戶可以在文本框中編輯信息。1常用屬性(1)text屬性用來(lái)設(shè)置文本框中的內(nèi)容。(2)MultiLine屬性MultiLine屬性用來(lái)決定文本框是否可輸入多行文本。默認(rèn)為false,設(shè)為true可輸入多行。(3)PasswordChar屬性用于密碼輸入,設(shè)置為*,顯示為*。
12/24/2022492.3.5文本框文本框控件一般用于接收用戶輸入信息,用戶(4)ScrollBars屬性用于設(shè)置文本框是否有滾動(dòng)條如表2。8只有當(dāng)MultiLine屬性為true時(shí)滾動(dòng)條才有效。(5)locked屬性用于設(shè)置文本框的內(nèi)容是否可以編輯,默認(rèn)值為false表示可編輯,值為true表示鎖定。12/24/202250(4)ScrollBars屬性12/16/2022502常用方法常用的方法為Setfocus設(shè)置焦點(diǎn),將光標(biāo)從其它位置移到文本框中。3常用事件(1)Chang事件,改變文本框中內(nèi)容改變時(shí)發(fā)生的事件(2)KeyPress事件,當(dāng)用戶按下并且釋放鍵盤上的一個(gè)鍵時(shí),發(fā)生KeyPress事件。該事件將返回一個(gè)KeyAscii參數(shù)值.(3)LostFocus和GotFocus事件:表示文本框控件shiqu和得到焦點(diǎn)是所發(fā)生的事件。
12/24/2022512常用方法12/16/2022512.4事件驅(qū)動(dòng)
2.4.1事件驅(qū)動(dòng)的程序設(shè)計(jì)事件驅(qū)動(dòng)的應(yīng)用程序,程序的執(zhí)行發(fā)生了根本的變化,代碼不是按預(yù)定的路線執(zhí)行,而是在響應(yīng)不同的事件時(shí)執(zhí)行不同的代碼片斷。每個(gè)對(duì)象都有一個(gè)相應(yīng)的事件集每個(gè)事件的發(fā)生都要執(zhí)行一段程序代碼,時(shí)間可以由用戶操作觸發(fā),也可以有操作系統(tǒng)或其他應(yīng)用程序的消息觸發(fā),甚至可以由應(yīng)用程序本身的消息觸發(fā)。
12/24/2022522.4事件驅(qū)動(dòng)2.4.1事件驅(qū)動(dòng)的程序設(shè)計(jì)12/16/2.4.2VB的對(duì)象如何識(shí)別事件
代碼部分與每個(gè)事件相對(duì)應(yīng),如果讓控件對(duì)象響應(yīng)事件,就把代碼寫入這個(gè)事件的事件過(guò)程中.2.4.3事件驅(qū)動(dòng)的工作過(guò)程
事件驅(qū)動(dòng)的工作過(guò)程(1)
啟動(dòng)應(yīng)用程序,裝載和顯示函數(shù)。(2)
窗體和窗體上的控件等待時(shí)間的發(fā)生。事件可以由用戶引發(fā),可由系統(tǒng)引發(fā),也可由代碼間接引發(fā)。(3)
當(dāng)某個(gè)事件發(fā)生后,執(zhí)行其對(duì)應(yīng)的事件過(guò)程代碼。(4)
重復(fù)執(zhí)行第2和第3步,直到結(jié)束。12/24/2022532.4.2VB的對(duì)象如何識(shí)別事件五、計(jì)時(shí)器控件的一般用法如果想通過(guò)事件來(lái)控制某些操作或用于計(jì)時(shí),就可以用計(jì)時(shí)器(Timer)控件來(lái)實(shí)現(xiàn)。計(jì)時(shí)器控件在設(shè)計(jì)時(shí)可見(jiàn),而在運(yùn)行時(shí)則隱藏起來(lái),但在后臺(tái)每隔一定的時(shí)間間隔就執(zhí)行一次Timer事件。(一)常用屬性1、Interval屬性返回或設(shè)置對(duì)Timer控件的計(jì)時(shí)事件各調(diào)用間的毫秒數(shù)語(yǔ)法:object.Interval[=milliseconds]
milliseconds:0使Timer控件無(wú)效;1~65535可設(shè)置的時(shí)間間隔范圍2、Enable屬性:用來(lái)決定計(jì)時(shí)器控件是否能夠響應(yīng)計(jì)時(shí)事件。相當(dāng)于啟動(dòng)或關(guān)閉計(jì)時(shí)器的開(kāi)關(guān)。12/24/202254五、計(jì)時(shí)器控件的一般用法如果想通過(guò)事件來(lái)控制某(二)Timer事件Timer事件是計(jì)時(shí)器的唯一事件。在一個(gè)Timer預(yù)定時(shí)間間隔過(guò)去之后發(fā)生,用以告訴VB在每個(gè)Interval到時(shí)該做什么。語(yǔ)法:PrivateSubobject_Timer([indexAsInteger])程序代碼EndSub12/24/202255(二)Timer事件12/16/202255本章習(xí)題一、單項(xiàng)選擇題1.在VisualBasic的集成開(kāi)發(fā)環(huán)境中創(chuàng)建VisualBasic應(yīng)用程序時(shí),除了工具箱窗口、窗體設(shè)計(jì)窗口、屬性窗口外,必不可少的窗口是()。A.窗體布局窗口B.立即窗口C.代碼窗口D.監(jiān)視窗口2.應(yīng)用程序打包后,其包文件的后綴為()。A..exeB..cabC..txtD..ocx3.當(dāng)運(yùn)行程序時(shí),系統(tǒng)自動(dòng)執(zhí)行啟動(dòng)窗體的()事件過(guò)程。A.LoadB.ClickC.UnloadD.GotFocus12/24/202256本章習(xí)題一、單項(xiàng)選擇題12/16/2022564.下列賦值語(yǔ)句正確的是()A.A=B+CB.B+C=AC.-B=AD.2=A+B5.時(shí)鐘控件響應(yīng)的事件是()A.TimerB.IntervalC.ClickD.Enable6.工程文件的后綴是()A..bmpB..vbp
C..frmD..bas
12/24/2022574.下列賦值語(yǔ)句正確的是()12/16/202257作業(yè)1.時(shí)間換算程序。設(shè)計(jì)一個(gè)時(shí)間換算程序,要求輸入小時(shí)數(shù)、分鐘數(shù)和秒數(shù)后,單擊計(jì)算按紐輸出共計(jì)秒數(shù)。程序運(yùn)行界面如圖1所示。圖1程序運(yùn)行界面12/24/202258作業(yè)1.時(shí)間換算程序。設(shè)計(jì)一個(gè)時(shí)間換算程序,要求輸入小時(shí)數(shù)、2.除法計(jì)算程序,編寫求兩個(gè)數(shù)相除的程序,若除數(shù)為零,用消息對(duì)話框提示重新輸入。程序運(yùn)行界面如下圖2所示。。圖2.程序運(yùn)行界面12/24/2022592.除法計(jì)算程序,編寫求兩個(gè)數(shù)相除的程序,若除數(shù)為零,用消息3.角度轉(zhuǎn)換程序。設(shè)計(jì)一程序,要求在文本框中輸入角的弧度值,按“轉(zhuǎn)換為角度”按紐,文本框中角的弧度值轉(zhuǎn)換為角度值,程序運(yùn)行界面如圖3所示。圖3角度轉(zhuǎn)換程序運(yùn)行界面12/24/2022603.角度轉(zhuǎn)換程序。設(shè)計(jì)一程序,要求在文本框中輸入角的弧度值,本講結(jié)束!12/24/20226112/16/202261VisualBasic程序設(shè)計(jì)12/24/202262VisualBasic程序設(shè)計(jì)12/16/20221第二講VB可視化編程初步12/24/202263第二講VB可視化編程初步12/16/20222[內(nèi)容簡(jiǎn)介]本章以一個(gè)簡(jiǎn)單的時(shí)鐘應(yīng)用程序開(kāi)發(fā)為主線:詳細(xì)介紹窗體、文本框、標(biāo)簽和命令按鈕等常用控件事件和事件過(guò)程以及事件驅(qū)動(dòng)程序設(shè)計(jì)的基本原理MsgBox函數(shù)、賦值語(yǔ)句的使用方法。通過(guò)本章的學(xué)習(xí),你將熟悉VisualBasic開(kāi)發(fā)應(yīng)用程序的全過(guò)程,領(lǐng)略到VB可視化編程的魅力,為進(jìn)一步深入學(xué)習(xí)奠定基礎(chǔ)。12/24/202264[內(nèi)容簡(jiǎn)介]本章以一個(gè)簡(jiǎn)單的時(shí)鐘應(yīng)用程序開(kāi)發(fā)為主線:12/1[學(xué)習(xí)目標(biāo)]
掌握VB應(yīng)用程序開(kāi)發(fā)的一般步驟。掌握命令按鈕、文本框和標(biāo)簽的使用和MsgBox函數(shù)的用法。理解賦值語(yǔ)句、變量的概念,理解對(duì)象、屬性、方法和事件的概念及其之間的區(qū)別和聯(lián)系,理解事件驅(qū)動(dòng)的原理。了解時(shí)鐘程序的工作原理。
12/24/202265[學(xué)習(xí)目標(biāo)]掌握VB應(yīng)用程序開(kāi)發(fā)的一般步驟。12/16/22.1“時(shí)鐘程序”任務(wù)在實(shí)際工作中,為了準(zhǔn)確的控制時(shí)間,經(jīng)常需要用到計(jì)時(shí)器,現(xiàn)在我們就來(lái)創(chuàng)建一個(gè)倒計(jì)時(shí)的簡(jiǎn)單應(yīng)用程序。該程序的功能是:當(dāng)在文本框內(nèi)輸入倒計(jì)時(shí)的分鐘數(shù)后,單擊“開(kāi)始”按鈕就開(kāi)始倒計(jì)時(shí),倒計(jì)時(shí)結(jié)束時(shí),彈出“時(shí)間到!”的信息框。
12/24/2022662.1“時(shí)鐘程序”任務(wù)在實(shí)際工作中,為了準(zhǔn)確的控制時(shí)間,經(jīng)任務(wù)描述
界面設(shè)計(jì)
代碼設(shè)計(jì)
保存和運(yùn)行程序
編譯與打包
安裝運(yùn)行
VB應(yīng)用程序開(kāi)發(fā)
的一般步驟
時(shí)鐘程序任務(wù)時(shí)鐘程序任務(wù)任務(wù)描述程序運(yùn)行:出現(xiàn)輸入分鐘數(shù)時(shí)間到:出現(xiàn)12/24/202267任務(wù)描述
界面設(shè)計(jì)
代碼設(shè)計(jì)
保存和運(yùn)行程序
編譯與打包
安2.1.1任務(wù)描述啟動(dòng)界面
12/24/2022682.1.1任務(wù)描述啟動(dòng)界面12/16/20227輸入1分鐘數(shù)字界面
12/24/202269輸入1分鐘數(shù)字界面12/16/20228倒計(jì)時(shí)進(jìn)行中界面
12/24/202270倒計(jì)時(shí)進(jìn)行中界面12/16/20229倒計(jì)時(shí)結(jié)束界面
12/24/202271倒計(jì)時(shí)結(jié)束界面12/16/2022102.1.2界面的設(shè)計(jì)
1新建工程并創(chuàng)建窗體啟動(dòng)VB在“新建工程“對(duì)話框中,選擇“標(biāo)準(zhǔn)EXE”單擊“打開(kāi)”。2向窗體中添加控件調(diào)整窗體的大小為合適,向窗體中添加:一個(gè)標(biāo)簽、一個(gè)文本框、一個(gè)命令按鈕和一個(gè)計(jì)時(shí)器控件。12/24/2022722.1.2界面的設(shè)計(jì)1新建工程并創(chuàng)建窗體12/16/2
通過(guò)鼠標(biāo)單擊“工具箱”中的控件,在窗體上劃出相應(yīng)的控件。12/24/202273通過(guò)鼠標(biāo)單擊“工具箱”中的控件,在窗體上劃出相應(yīng)的控件。13設(shè)置對(duì)象屬性(1)單擊Form1窗體,選定它。在屬性窗口中選中Form1,將Caption的屬性改為“倒計(jì)時(shí)器”(2)單擊窗體上的“Label1”控件,將Caption的屬性改為清輸入倒計(jì)時(shí)的分鐘數(shù),將Autosize屬性改為true(3)將命令按鈕command1的Caption屬性改為“開(kāi)始“。(4)將text1的Alignment屬性改為“2-center”.(5)將計(jì)時(shí)器控件timer的Interval的屬性值設(shè)為1000(1秒),Enabled屬性設(shè)為False.12/24/2022743設(shè)置對(duì)象屬性(1)單擊Form1窗體,選定它。在屬性窗口2.1.3代碼設(shè)計(jì)(1)代碼編輯器“通用”區(qū)代碼DimmAsLong‘聲明一個(gè)變量(2)Command1控件代碼PrivateSubCommand1_Click()'使計(jì)時(shí)器控件開(kāi)始工作Timer1.Enabled=True
'將分鐘數(shù)轉(zhuǎn)換為秒數(shù),并保存在m變量中m=Val(Text1.Text)*60
'改變標(biāo)簽控件的標(biāo)題Label1.Caption="現(xiàn)在開(kāi)始倒計(jì)時(shí)"
'使用命令按鈕不可見(jiàn)Command1.Visible=FalseEndSub12/24/2022752.1.3代碼設(shè)計(jì)(1)代碼編輯器“通用”區(qū)代碼12/162.1.3代碼設(shè)計(jì)(3)Timer1控件代碼PrivateSubTimer1_Timer()'當(dāng)Timer1.Enabled=Ture是,本程序每秒自動(dòng)執(zhí)行一次
'每運(yùn)行一次,就將m變量的值減1秒m=m–1
Ifm<0Then'如果倒計(jì)時(shí)結(jié)束(即m=0)則:Timer1.Enabled=False'關(guān)閉計(jì)時(shí)器MsgBox"時(shí)間到!",0,"倒計(jì)時(shí)"Label1.Caption="請(qǐng)輸入計(jì)時(shí)的分鐘數(shù)"Text1.Text=""'清空文本框Command1.Visible=True''使命令按鈕可見(jiàn)Else'否則顯示倒計(jì)時(shí)數(shù)Text1.Text=mEndIfEndSub12/24/2022762.1.3代碼設(shè)計(jì)(3)Timer1控件代碼12/16/22.1.4保存和運(yùn)行程序1.保存工程單擊“文件”菜單中的“保存工程”2.運(yùn)行程序單擊工具欄中的啟動(dòng)按鈕,或者按F5鍵開(kāi)始運(yùn)行該應(yīng)用程序。12/24/2022772.1.4保存和運(yùn)行程序1.保存工程12/16/20222.1.5編譯與打包1.編譯應(yīng)用程序單擊“文件”菜單中的“生成Timer.exe”選項(xiàng)2.打包創(chuàng)建一個(gè)安裝程序來(lái)發(fā)布文件Package&Deployment向?qū)?2/24/2022782.1.5編譯與打包1.編譯應(yīng)用程序12/16/20222.1.6VB應(yīng)用程序開(kāi)發(fā)的一般步驟1.設(shè)計(jì)應(yīng)用程序界面2.設(shè)置對(duì)象屬性3.編寫代碼4.保存和運(yùn)行工程5.編譯與打包6.安裝運(yùn)行12/24/2022792.1.6VB應(yīng)用程序開(kāi)發(fā)的一般步驟1.設(shè)計(jì)應(yīng)用程序2.2程序代碼分析2.2.1變量是指在程序運(yùn)行過(guò)程中其值可以改變的那些量。當(dāng)執(zhí)行了Dim語(yǔ)句后,VB程序就會(huì)在計(jì)算機(jī)內(nèi)存中預(yù)留一個(gè)區(qū)域,準(zhǔn)備存放數(shù)據(jù)。變量命名規(guī)則:第一個(gè)字符必須是字母其它字符只能是字母、數(shù)字、下劃線最后一個(gè)字符可以是類型說(shuō)明符變量名最長(zhǎng)可達(dá)255個(gè)字符不能與保留字重名,如Input盡量使用有意義的名字12/24/2022802.2程序代碼分析2.2.1變量12/16/202219聲明變量隱式聲明:變量不經(jīng)聲明直接使用,此時(shí)該變量將被賦予缺省的類型和值
如:class=3'class為整型
name="張三"'name為字符串顯式聲明:變量聲明后再使用
強(qiáng)制顯式聲明工具/選項(xiàng)/編輯器/要求變量聲明代碼編輯器/對(duì)象列表中選通用,在聲明區(qū)加入聲明optionexplicit12/24/202281聲明變量12/16/202220使用Dim語(yǔ)句聲明變量
一般格式:Dim變量名As變量類型
例:
DimnumAsInteger
'聲明num為整型變量
DimtestAslong,todayAsDate '同時(shí)聲明test為長(zhǎng)整型,today為日期型
DimstrAsstring,value
'聲明str為一變長(zhǎng)字符串,value為不定類型12/24/202282使用Dim語(yǔ)句聲明變量
一般格式:Dim變量名As全局變量的聲明
全局變量是可以在工程中的所有程序模塊使用的變量。使用關(guān)鍵字Public和Global
如:Publictest1AsInteger
Globaltest2AsByte12/24/202283全局變量的聲明
12/16/202222表VB的標(biāo)準(zhǔn)數(shù)據(jù)類型數(shù)據(jù)類型類型名稱類型聲明字符所占字節(jié)字節(jié)型Byte10~255布爾型Boolean2整型Interger%2長(zhǎng)整型Long&4單精度型Single!4雙精度型Double#8貨幣型Currency@8日期型Date8對(duì)象型Object4變長(zhǎng)字符串型String$字符串長(zhǎng)度,1字節(jié)/字符定長(zhǎng)字符串型String*Num$Num可變類型Variant不定12/24/202284表VB的標(biāo)準(zhǔn)數(shù)據(jù)類型數(shù)據(jù)類型類型名稱類型聲所占字節(jié)2.2.2賦值語(yǔ)句
格式:變量名=表達(dá)式
或?qū)ο竺?屬性名=表達(dá)式注意:1、不要把賦值號(hào)“=”與數(shù)學(xué)中的等號(hào)相混淆m=m-12、賦值號(hào)“=”左邊必須是變量名或?qū)ο髮傩?,?”右邊是表達(dá)式,其值可以是常量、變量、函數(shù)或是它們的混合運(yùn)算式m=val(text1.text)*60z=x+yb=1c=b*2+2label1.caption=“現(xiàn)在開(kāi)始倒計(jì)時(shí)”12/24/2022852.2.2賦值語(yǔ)句
格式:12/16/2022242.2.3MsgBox語(yǔ)句和函數(shù)的使用
MsgBox函數(shù)的格式:變量=msgbox(提示信息[,對(duì)話框類型[,對(duì)話框標(biāo)題]])MsgBox命令語(yǔ)句的格式: msgbox提示信息[,對(duì)話框類型[,對(duì)話框標(biāo)題]]MsgBox函數(shù)各參數(shù)使用與MsgBox語(yǔ)句函數(shù)相同,但是MsgBox語(yǔ)句沒(méi)有返回值。12/24/2022862.2.3MsgBox語(yǔ)句和函數(shù)的使用12/16/20參數(shù)說(shuō)明:(1)“提示信息”指定在對(duì)話框中出現(xiàn)的文本。(2)“對(duì)話框標(biāo)題”指定了對(duì)話框的標(biāo)題。(3)“對(duì)話框類型”是可選項(xiàng),用來(lái)指定對(duì)話框中出現(xiàn)的按鈕和圖標(biāo),見(jiàn)(p32表2.1、表2.2、表2.3),該參數(shù)的值有三類數(shù)值相加產(chǎn)生,這三類數(shù)值分別表示按鈕的類型、顯示圖標(biāo)的種類和默認(rèn)按鈕的位置。msgbox“時(shí)間到!”,0,”倒計(jì)時(shí)”(4)函數(shù)返回值見(jiàn)p32表2.412/24/202287參數(shù)說(shuō)明:12/16/202226編寫程序利用MsgBox函數(shù)創(chuàng)建對(duì)話框
PrivateSubForm_Click()msgtitle$="考生登錄信息提示"msg1$="準(zhǔn)考證號(hào)輸入有誤,請(qǐng)重新輸入正確的號(hào)碼!"w=MsgBox(msg1$,37,msgtitle$)PrintwEndSub12/24/202288編寫程序利用MsgBox函數(shù)創(chuàng)建對(duì)話框PrivateSu例如:執(zhí)行下列語(yǔ)句privatesubcommand1_click()msgbox(“除數(shù)不能為0!”,vbokcancel,”輸入數(shù)據(jù)錯(cuò)誤”)endsubP33例如:執(zhí)行下列語(yǔ)句privatesubcommand1_click()a=msgbox(“密碼不正確”,2+32+0,”標(biāo)題”)ifa=3thenend‘如果選擇了“終止”按鈕則程序結(jié)束endifendsubP3312/24/202289例如:執(zhí)行下列語(yǔ)句例如:執(zhí)行下列語(yǔ)句12/16/202228例如:執(zhí)行下列語(yǔ)句privatesubcommand1_click()msgbox“密碼不正確,”+chr(13)+”請(qǐng)重新輸入!”endsubP3312/24/202290例如:執(zhí)行下列語(yǔ)句12/16/2022292.3窗體及基本控件
2.3.1對(duì)象的概念、屬性、事件及方法1對(duì)象的概念簡(jiǎn)單的說(shuō),對(duì)象就是代碼和數(shù)據(jù)的封裝體。VB中,我們將窗體、標(biāo)簽、文本框、命令按鈕和時(shí)鐘控件等都可以理解為對(duì)象。2屬性屬性是一個(gè)對(duì)象的基本特征,每一個(gè)對(duì)象都有自己的屬性。常見(jiàn)的對(duì)象的屬性有標(biāo)題(Caption)、名稱(mane)、顏色(color)、字體(font)、是否可見(jiàn)(Visible)等。12/24/2022912.3窗體及基本控件2.3.1對(duì)象的概念、屬性、事件及各屬性通常都有默認(rèn)值,如果不改變采用默認(rèn)值。(1)在設(shè)計(jì)階段,通過(guò)屬性窗口來(lái)改變各屬性值。(2)在程序代碼中,使用賦值語(yǔ)句設(shè)置對(duì)象的屬性格式:對(duì)象名.屬性名=屬性值例如:Label1.Caption=”現(xiàn)在開(kāi)始倒計(jì)時(shí)”12/24/202292各屬性通常都有默認(rèn)值,如果不改變采用默認(rèn)值。12/16/203方法一般說(shuō),方法就是要執(zhí)行的動(dòng)作,可理解為VB提供的一種特殊的過(guò)程和函數(shù),已將一些通用的函數(shù)和過(guò)程編寫好并封裝起來(lái),如:打?。╬rint)、顯示窗體(show)、清除(cls)和移動(dòng)(move)等調(diào)用對(duì)象的方法格式為:對(duì)象名.方法名例如:form1.print“你好!”4事件事件就是在對(duì)象上發(fā)生的事情,在VB中,系統(tǒng)是預(yù)先為每個(gè)對(duì)象定義好了一系列事件.例如:?jiǎn)螕羰录?click)、雙機(jī)事件(dblclick)、裝入事件(load)、改變事件(change)和鼠標(biāo)移動(dòng)事件(mousemove)等.鼠標(biāo)單擊(事件)命令按鈕(對(duì)象)調(diào)用打印(方法)
12/24/2022933方法12/16/2022322.3.2窗體(Form)窗體的結(jié)構(gòu)12/24/2022942.3.2窗體(Form)窗體的結(jié)構(gòu)12/16/202232.3.2窗體
窗體(Form)是用戶界面最基本的構(gòu)造模塊,也是創(chuàng)建應(yīng)用程序所使用的主要對(duì)象之一。窗體有自己的屬性、事件和方法,以便控制窗體的外觀和行為。窗體又是其他對(duì)象的載體和容器,幾乎所有的控件都是在窗體上的。窗體運(yùn)行以后,就是應(yīng)用程序的窗口。12/24/2022952.3.2窗體窗體(Form)是用戶界面最基本的構(gòu)造模塊1窗體的基本屬性設(shè)置窗體的屬性有兩種方法,一種使用屬性窗口,另一種是在代碼編輯器中使用代碼命令。常見(jiàn)的窗體屬性有以下幾種:(1)Name屬性用于設(shè)置窗體名稱,默認(rèn)名稱為Form1,Name屬性只能在屬性窗口中設(shè)置。(2)Caption屬性用于設(shè)置顯示在標(biāo)題欄上的窗體的標(biāo)題,在屬性窗口和代碼編輯器均可設(shè)置。其默認(rèn)值同窗口名稱相同。如:窗體名稱.Caption=”標(biāo)題”12/24/2022961窗體的基本屬性12/16/202235(3)MaxButton和MinButton屬性各有兩個(gè)屬性True和False,分別表示標(biāo)題欄上是否有最大化和最小化按鈕.(4)BorderStyle邊框樣式屬性表2.5所示(5)Picture屬性設(shè)置窗體上要顯示的圖片,可以用語(yǔ)句:對(duì)象.picture=loadpicture(“文件名”)(6)Icon屬性用于設(shè)置窗體標(biāo)題欄上的圖標(biāo).(7)visible屬性用于設(shè)置窗體是否可見(jiàn).(8)WindowsState屬性用來(lái)設(shè)置窗體運(yùn)行時(shí)窗體的顯示狀態(tài)0-Normal,1-Minimized,2-Maximized12/24/202297(3)MaxButton和MinButton屬性12/162窗體的常用方法
(1)show方法用于快速先是一窗體,與窗體的visible屬性設(shè)置位為true一樣.Form1.showForm1.visible=true(2)Hide方法其功能是隱藏窗體,與窗體的visible屬性設(shè)置位為false一樣Form1.HideForm1.visible=false(3)print方法用于在窗體或圖片框上輸出文本privatesubform_load()dbug.print“print方法可以在窗體上打印文本”endsub.12/24/2022982窗體的常用方法(1)show方法12/16/2(4)cls方法用于清除運(yùn)行時(shí)在窗體和圖片框中顯示的文本和圖片.picture.cls‘清除圖片框中的圖片cls‘清除窗體上的文本(5)move方法
將窗體已到指定位置,如:form1.move(0,0)將窗體一到左上角。
12/24/202299(4)cls方法12/16/2022383窗體的常用事件
窗體的常用事件有(通過(guò)代碼編輯器)(1)click單擊事件單擊窗體是發(fā)生(2)DblClick事件雙擊窗體是發(fā)生。(3)load事件裝在窗體是發(fā)生。(4)Unload事件當(dāng)單擊窗體上的”關(guān)閉”和或使用Unload語(yǔ)句時(shí)觸發(fā)該事件.(5)Activate和DeActivate事件當(dāng)一個(gè)窗體變成活動(dòng)窗體時(shí),就會(huì)觸發(fā)Activate事件.當(dāng)窗體不再是活動(dòng)窗體時(shí)就會(huì)觸發(fā)DeActivate事件12/24/20221003窗體的常用事件窗體的常用事件有(通過(guò)代碼編輯器)14窗體事件演示程序
事例:設(shè)計(jì)一窗體,是標(biāo)題欄上無(wú)最大化和最小化按鈕;運(yùn)行后將窗體的顏色設(shè)置為黃色;單機(jī)窗體時(shí)窗體變寬;雙擊窗體時(shí)退出.12/24/20221014窗體事件演示程序12/16/2022402.3.3命令按鈕
其主要功能是通過(guò)命令按鈕來(lái)調(diào)用Click事件過(guò)程??刂崎_(kāi)始、中斷、結(jié)束一個(gè)進(jìn)程。1、常用屬性
Enabled:允許程序在運(yùn)行時(shí)使窗體和控件成為有效或無(wú)效
object.Enable[=boolean]
Visible:允許在程序運(yùn)行時(shí)隱藏一個(gè)對(duì)象
object.Visible[=booleanStyle:設(shè)置按鈕外觀。0為標(biāo)準(zhǔn)Windows風(fēng)格,1為允許帶有自定義圖片
Picture:Style為1時(shí),指定粘貼到按鈕上的圖形文件Default:屬性為True時(shí),指定為窗體缺省按鈕Cancel:屬性為True時(shí),指定為窗體缺省取消按鈕
12/24/20221022.3.3命令按鈕12/16/202241例如:OptionExplicitPrivateSubForm_Load()Text1.Text=""Command1.Caption="save"EndSubPrivateSubText1_Change()IfText1.Text=""ThenCommand1.Enabled=FalseElseCommand1.Enabled=TrueEndIfEndSub12/24/2022103例如:12/16/2022422、常用方法SetFocus方法3、常用事件Click(單擊)Click事件,以下情況可發(fā)生Clicl事件:(1)在按鈕上單擊鼠標(biāo)。(2)焦點(diǎn)在按鈕上,按空格鍵或回車鍵。(3)在代碼中將按鈕Value屬性設(shè)置為True(4)對(duì)于取消按鈕按Esc鍵(5)在Caption屬性中用&符號(hào)鏈接一訪問(wèn)鍵,在運(yùn)行時(shí)按Ali+訪問(wèn)鍵。12/24/20221042、常用方法12/16/2022432.3.4標(biāo)簽
標(biāo)簽現(xiàn)實(shí)不能編輯的信息。1常用屬性(1)AutoSize當(dāng)值為true時(shí)自動(dòng)調(diào)節(jié)內(nèi)容大小以適應(yīng)其內(nèi)容。當(dāng)值為false時(shí),不能改變大小。(2)Alignment屬性標(biāo)簽內(nèi)文本的對(duì)齊方式,標(biāo)2.7所示(3)BordeStyle屬性標(biāo)簽的邊框,默認(rèn)值為0,無(wú)邊框。屬性設(shè)為1右邊框。
12/24/20221052.3.4標(biāo)簽標(biāo)簽現(xiàn)實(shí)不能編輯的信息。12/16/202(4)Backstyle屬性用來(lái)設(shè)置標(biāo)簽是否透明,0透明,1不透明,默認(rèn)值為1。(5)wordwrap屬性
用來(lái)設(shè)置標(biāo)簽中的內(nèi)容是否能夠顯示多行。缺省為false,設(shè)為true可顯示多行。
2常用方法
常用方法有move方法實(shí)現(xiàn)控件的移動(dòng)。
12/24/2022106(4)Backstyle屬性12/16/202245其他用法用標(biāo)簽來(lái)顯示時(shí)間
Label1.Caption=Time在標(biāo)簽中同時(shí)顯示兩行以上的字符串
Label1.Caption=Time&Chr(13)&Chr(10)&Date12/24/202210712/16/2022462.3.5文本框(Textbox)1.常用屬性(1)Text屬性(2)MultiLine屬性MultiLine屬性為TrueMultiLine屬性為False12/24/20221082.3.5文本框(Textbox)1.常用屬性Multi2.3.5文本框(Textbox)1.常用屬性(3)PassWordChar(a)(b)12/24/20221092.3.5文本框(Textbox)1.常用屬性(a)(b2.3.5文本框
文本框控件一般用于接收用戶輸入信息,用戶可以在文本框中編輯信息。1常用屬性(1)text屬性用來(lái)設(shè)置文本框中的內(nèi)容。(2)MultiLine屬性MultiLine屬性用來(lái)決定文本框是否可輸入多行文本。默認(rèn)為false,設(shè)為true可輸入多行。(3)PasswordChar屬性用于密碼輸入,設(shè)置為*,顯示為*。
12/24/20221102.3.5文本框文本框控件一般用于接收用戶輸入信息,用戶(4)ScrollBars屬性用于設(shè)置文本框是否有滾動(dòng)條如表2。8只有當(dāng)MultiLine屬性為true時(shí)滾動(dòng)條才有效。(5)locked屬性用于設(shè)置文本框的內(nèi)容是否可以編輯,默認(rèn)值為false表示可編輯,值為true表示鎖定。12/24/2022111(4)ScrollBars屬性12/16/2022502常用方法常用的方法為Setfo
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題開(kāi)題報(bào)告:大學(xué)生心理危機(jī)的特點(diǎn)與干預(yù)策略研究
- 課題開(kāi)題報(bào)告:初中道德與法治學(xué)業(yè)水平考試試題特點(diǎn)與教學(xué)策略研究
- 幼兒園玩具采購(gòu)與幼兒園特色課程開(kāi)發(fā)合同
- 醫(yī)療資源配置的咨詢合同
- 水鉆鎖包企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級(jí)戰(zhàn)略研究報(bào)告
- 二零二五年度酒吧整體承包經(jīng)營(yíng)風(fēng)險(xiǎn)控制協(xié)議
- 二零二五年度汽車租賃中介合伙購(gòu)買合同
- 2025年度標(biāo)準(zhǔn)畢業(yè)生實(shí)習(xí)合同(房地產(chǎn))
- 文具盒企業(yè)縣域市場(chǎng)拓展與下沉戰(zhàn)略研究報(bào)告
- 2025年度綠色建筑評(píng)價(jià)標(biāo)識(shí)合同分類及評(píng)價(jià)體系完善
- 《自動(dòng)噴水滅火系統(tǒng)設(shè)計(jì)》圖示
- 第二章陸地和海洋【真題訓(xùn)練】(人教版)(原卷版)
- 小吃街概念性規(guī)劃
- 創(chuàng)新小白實(shí)操手冊(cè) 第2版 課件全套 吳雋 模塊1-8 人人皆可創(chuàng)新-商業(yè)呈現(xiàn)與商業(yè)計(jì)劃
- 2024年世界職業(yè)院校技能大賽高職組“關(guān)務(wù)實(shí)務(wù)組”賽項(xiàng)參考試題庫(kù)(含答案)
- 電商提成合同模板
- 正念八周課件
- 服務(wù)響應(yīng)時(shí)間和服務(wù)保障方案
- 蟾蜍毒抗病毒作用機(jī)制
- 光伏發(fā)電監(jiān)理合同協(xié)議
- 新能源汽車概論課件 3.1認(rèn)知純電動(dòng)汽車
評(píng)論
0/150
提交評(píng)論