版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第7章用戶界面設(shè)計(jì)
7.17.2通用對(duì)話框7.3菜單設(shè)計(jì)7.4多重窗體
7.5鼠標(biāo)和鍵盤7.6綜合應(yīng)用第7章用戶界面設(shè)計(jì)7.117.1常用控件
在VB中控件大致分為三類:標(biāo)準(zhǔn)控件:在工具箱中默認(rèn)顯示ActiveX控件:是擴(kuò)展名為.ocx的獨(dú)立文件,是VB工具箱的擴(kuò)充部分可插入對(duì)象:是Windows應(yīng)用程序的對(duì)象添加刪除ActiveX控件ActiveX控件在使用前需要執(zhí)行“工程”菜單下的“部件”命令,在打開的“部件”對(duì)話框中選擇“控件”標(biāo)簽,然后選擇需要加入工具箱中的ActiveX控件名,單擊“確定”即可將控件加入到工具箱中7.1常用控件在VB中控件大致分為三類:27.1.1單選按鈕、復(fù)選框和框架1.單選按鈕(OptionButton)單選按鈕以組的形式出現(xiàn),只允許選擇一項(xiàng)重要屬性
Caption屬性按鈕上顯示的文本Value屬性表示單選按鈕的狀態(tài):
True——被選定
False——未被選定重要事件Click事件:單擊后使Value屬性為TrueSetFocus方法是單選鈕控件最常用的方法,可以在代碼中通過該方法將Value屬性設(shè)置為TrueOption2.SetFocus7.1.1單選按鈕、復(fù)選框和框架3用于給定選項(xiàng)的選取,可以同時(shí)選取多項(xiàng)(復(fù)選)Value屬性值為整型,表示復(fù)選框的狀態(tài):0--vbUnchecked未選定1--vbChecked被選定2--vbGrayed灰色,并顯示一個(gè)選中標(biāo)記Caption:復(fù)選框標(biāo)題文字重要事件Click事件:用戶單擊后,復(fù)選框自動(dòng)改變狀態(tài)2.復(fù)選框(CheckBox)
用于給定選項(xiàng)的選取,可以同時(shí)選取多項(xiàng)(復(fù)選)2.復(fù)選框(Ch43.框架(Frame)
作為容器,用于放置控件,可以整體移動(dòng)。主要用于單選鈕的分組,一組中的單選鈕互斥,與另一組單選鈕無關(guān)Caption屬性,給出框架的標(biāo)題注意:1.必須先有框架,再向框架中放入其他控件2.若用框架將現(xiàn)有的控件分組,則選定控件剪切、選中框架再粘貼框架可以響應(yīng)Click和DoubleClick事件,但一般不需要編寫事件過程
框架設(shè)Caption為"字體"3.框架(Frame)作為容器,用于放置控件,可以整體移5例:窗體上有一個(gè)名稱為Frame1的框架,若要把框架上顯示的“Frame1”改為漢字“框架”下面正確的語(yǔ)句是A)Frame1.Name="框架“B)Frame1.Caption="框架“C)Frame1.Text="框架“D)Frame1.Value="框架"例:窗體上有一個(gè)名稱為Frame1的框架,若要把框架上顯示的6例:窗體上畫兩個(gè)單選按鈕(Option1、Option2,標(biāo)題分別為“宋體”“黑體”)1個(gè)復(fù)選框(Check1,標(biāo)題為“粗體”)1個(gè)文本框(Text1,Text屬性為“改變文字字體”),程序運(yùn)行后要求“宋體”單選按鈕和“粗體”復(fù)選框被選中,則能實(shí)現(xiàn)的語(yǔ)句是:A)Option1.Value=FalseCheck1.Value=TrueB)Option1.Value=TrueCheck1.Value=0C)Option1.Value=FalseCheck1.Value=2D)Option1.Value=TrueCheck1.Value=1例:窗體上畫兩個(gè)單選按鈕(Option1、Option2,標(biāo)7例7.2PrivateSubOption1_Click()Text1.FontName="宋體"EndSubPrivateSubOption2_Click()Text1.FontName="黑體"EndSubPrivateSubCheck1_Click()Text1.FontBold=NotText1.FontBoldEndSubPrivateSubCheck2_Click()Text1.FontItalic=NotText1.FontItalicEndSubPrivateSubCheck3_Click()Text1.FontStrikethru=NotText1.FontStrikethruEndSubPrivateSubCheck4_Click()Text1.FontUnderline=NotText1.FontUnderlineEndSub例7.28例7.2對(duì)象屬性Frame1Frame2Check1計(jì)算機(jī)Check2操作系統(tǒng)Option1Windows2000Option2Windows98Combo1Text1Label1品牌:Label2數(shù)量:Command1OKList1例7.2對(duì)象屬性Frame1Frame2Check1計(jì)算機(jī)C9PrivateSubForm_Load()Combo1.Enabled=FalseText1.Enabled=FalseOption1.Enabled=FalseOption2.Enabled=FalseEndSubPrivateSubCheck1_Click()Combo1.Enabled=NotCombo1.EnabledText1.Enabled=NotText1.EnabledEndSubPrivateSubCheck2_Click()Option1.Enabled=NotOption1.EnabledOption2.Enabled=NotOption2.EnabledEndSubPrivateSubForm_Load()10PrivateSubCombo1_LostFocus()flag=FalseFori=0ToCombo1.ListCount–1IfCombo1.List(i)=Combo1.TextThenflag=TrueExitForEndIfNextiIfNotflagThenCombo1.AddItemCombo1.TextEndIfEndSubPrivateSubCombo1_LostFocus()11PrivateSubCommand1_Click()IfCheck1.Value=1ThenList1.AddItemCombo1.TextList1.AddItemText1EndIfIfCheck2.Value=1ThenIfOption1.ValueThenList1.AddItem"Windows2000“ElseList1.AddItem"Windows98“EndIfEndIfEndSubPrivateSubCommand1_Click()127.1.2滾動(dòng)條和進(jìn)度條
滾動(dòng)條(ScrollBar)通常附在窗體上協(xié)助觀察數(shù)據(jù)或確定位置,也可作為數(shù)據(jù)輸入工具進(jìn)度條(ProgressBar)用來指示事務(wù)處理的進(jìn)度7.1.2滾動(dòng)條和進(jìn)度條滾動(dòng)條(ScrollBar)通常13滾動(dòng)條屬性滾動(dòng)條控件(ScrollBar)分為水平滾動(dòng)(HScrollbar)和垂直滾動(dòng)條(VscrollBar)Value:滑塊當(dāng)前位置的值(缺省為0)Min:滑塊處最小位置的值(缺省為0)Max:
滑塊處在最大位置的值SmallChange單擊滾動(dòng)條兩端的箭頭時(shí),Value屬性(滑塊位置)增加或減少的值LargeChange單擊滾動(dòng)條的空白區(qū)域時(shí),Value屬性增加或減少的值滾動(dòng)條屬性滾動(dòng)條控件(ScrollBar)分為水平滾動(dòng)(HS14滾動(dòng)條事件(1)Change事件改變Value屬性值(滾動(dòng)條內(nèi)滑塊位置改變)時(shí)發(fā)生單擊滾動(dòng)條兩端的箭頭或空白處將引發(fā)Change事(2)Scroll事件按水平方向或垂直方向滾動(dòng)時(shí),Scroll事件發(fā)生拖動(dòng)滑塊時(shí)會(huì)觸發(fā)Scroll事件Scroll事件與Change事件的區(qū)別:當(dāng)滾動(dòng)條控件滾動(dòng)時(shí)Scroll事件一直發(fā)生,而Change事件只是在滾動(dòng)結(jié)束之后才發(fā)生一次滾動(dòng)條事件(1)Change事件15例7.3計(jì)算0~18之間某個(gè)數(shù)階乘,數(shù)據(jù)由滾動(dòng)條獲得。滾動(dòng)條屬性設(shè)置:Max屬性18,Min屬性0,Value初值0
SmallChange屬性為1,LargeChange屬性為3PrivateSubHScroll1_Change()DimiAsInteger,sAsDoubles=1n=HScroll1.ValueIfn<>0ThenFori=1Tons=s*iNextiEndIfLabel2.Caption=n&"!="&sEndSub例7.3計(jì)算0~18之間某個(gè)數(shù)階乘,數(shù)據(jù)由滾動(dòng)條獲得。Pri16例7.4設(shè)計(jì)一個(gè)調(diào)色板應(yīng)用程序,使用三個(gè)滾動(dòng)條作為三種基本顏色的輸入工具。三個(gè)滾動(dòng)條屬性設(shè)置:Max屬性255Min屬性0,Value初值0
SmallChange屬性為1,LargeChange屬性為25兩個(gè)按鈕,一個(gè)文本框一個(gè)標(biāo)簽例7.4設(shè)計(jì)一個(gè)調(diào)色板應(yīng)用程序,使用三個(gè)滾動(dòng)條作為三個(gè)滾17DimRed&,Green&,BlueAsLongPrivateSubCommand2_Click()Text1.BackColor=Label1.BackColorEndSubPrivateSubCommand1_Click()Text1.ForeColor=Label1.BackColorEndSubPrivateSubHScroll1_Change()Red=HScroll1.ValueGreen=HScroll2.ValueBlue=HScroll3.ValueLabel1.BackColor=RGB(Red,Green,Blue)EndSubDimRed&,Green&,BlueAsLong18PrivateSubHScroll2_Change()Red=HScroll1.ValueGreen=HScroll2.ValueBlue=HScroll3.ValueLabel1.BackColor=RGB(Red,Green,Blue)EndSubPrivateSubHScroll3_Change()Red=HScroll1.ValueGreen=HScroll2.ValueBlue=HScroll3.ValueLabel1.BackColor=RGB(Red,Green,Blue)EndSubPrivateSubHScroll2_Change()19例、窗體上有一個(gè)名稱為Hscroll1的滾動(dòng)條,程序運(yùn)行后,當(dāng)單擊滾動(dòng)條兩端的箭頭時(shí),立即在窗體上顯示滾動(dòng)塊的位置(即刻度值),能實(shí)現(xiàn)操作的過程是
A)PrivateSubHScroll1_Changc()PrintHScroll1.ValueEndSubB)PrivateSubHSctroll1_Change()
PrintHScroll1.SmallChange
EndSub
C)PrivateSubHScroll1_Scroll()PrintHScroll1.ValueEndSubD)PrivateSubHScroll1_Scroll()
PrintHScroll1.SmallChange
EndSub例、窗體上有一個(gè)名稱為Hscroll1的滾動(dòng)條,程序運(yùn)20例:設(shè)窗體上有一個(gè)名稱為HScroll1的水平滾動(dòng)條,當(dāng)滾動(dòng)塊移動(dòng)位置后,能夠在窗體上輸出移動(dòng)的距離(即新位置與原位置的刻度值之差,向右移動(dòng)為正數(shù),向左移動(dòng)為負(fù)數(shù))。下面可實(shí)現(xiàn)此功能程序,請(qǐng)?zhí)顚?/p>
Dim
AsIntegerPrivateSubForm_Load()pos=HScroll1.ValueEndSubPrivateSubHScroll1_Change()Print
-pospos=HScroll1.ValueEndSub
HScroll1.value
pos例:設(shè)窗體上有一個(gè)名稱為HScroll1的水平滾動(dòng)條,HSc21ProgressBar控件
ProcessBar控件位于MicrosoftWindowsCommonControls6.0部件中,其添加到工具箱后的圖標(biāo)ProcessBar控件用于:監(jiān)視一個(gè)較長(zhǎng)操作完成的進(jìn)度,它通過從左到右用一些方塊填充矩形的形式來表示操作處理的進(jìn)程。屬性:Orientation:決定進(jìn)度條有水平和垂直兩種
0ccOrientationHorizontal(默認(rèn))1ccOrientationVerticalProgressBar控件ProcessBa22Max和Min設(shè)置控件的界限Value控件執(zhí)行階段被填充的數(shù)目,直到等于Max.控件顯示的填充數(shù)是Value屬性與Max和Min屬性之間的比值(如:Max=5和Min=0,Value=2,那么就填充五分之二)在對(duì)ProgressBar編程時(shí),必須先確定Value屬性上限Max和Min設(shè)置控件的界限23例7.5用進(jìn)度條來指示一個(gè)大數(shù)組的元素賦值進(jìn)度。SubCommand1_Click()DimiAsInteger,a(25000)AsStringProgressBar1.Min=LBound(a)ProgressBar1.Max=UBound(a)ProgressBar1.Visible=TrueProgressBar1.Value=ProgressBar1.MinFori=LBound(a)ToUBound(a)a(i)="Initialvalue"&iProgressBar1.Value=iNextiProgressBar1.Visible=FalseProgressBar1.Value=ProgressBar1.MinFori=1To10Printa(i)NextiEndSub例7.5用進(jìn)度條來指示一個(gè)大數(shù)組的元素賦值進(jìn)度。247.1.3圖形框和圖像框圖形框PictureBox控件作用:顯示圖片,也可作為其他控件的容器在程序運(yùn)行時(shí)裝入圖形:Picture1.Picture=LoadPicture(“圖形文件路徑及名稱")刪除圖形框中圖形Picture1.Picture=LoadPicture(“”)裝入另一個(gè)圖形框中的圖形Picture1.Picture=Picture2.Picture
Autosize屬性
True圖形框自動(dòng)調(diào)整大小與圖片匹配
False圖形超過圖形框的部分將被剪裁掉7.1.3圖形框和圖像框圖形框PictureBox控件25圖像框Image
使用方法與圖形框相同區(qū)別:1.圖形框作為一個(gè)“容器”,可以把其他控件放在其內(nèi)作為它的“子控件”,當(dāng)圖形發(fā)生位移,其內(nèi)的子控件也跟著一起移動(dòng)。圖像框內(nèi)不能存放其他控件
2.沒有Autosize屬性,但有Stretch屬性3.圖形框可通過Print方法顯示文本,而圖像框不能
Stretch屬性
False:圖像框自動(dòng)改變大小適應(yīng)其中的圖形
True:圖形根據(jù)圖像框的大小自動(dòng)調(diào)整尺寸圖像框Image使用方法與圖形框相同26例7.6說明圖像框的Stretch屬性對(duì)加載的圖形的影響Max屬性20、Min屬性0,Value初值10DimH&,WAsLongSubCheck1_Click()Image1.Stretch=Check1.ValueEndSubSubForm_Load()H=Image1.HeightW=Image1.WidthEndSubSubHScroll1_Scroll()Image1.Height=H*HScroll1.Value/10Image1.Width=W*HScroll1.Value/10EndSub例7.6說明圖像框的Stretch屬性對(duì)加載的圖形的影響277.1.4定時(shí)器
時(shí)鐘控件(Timer)又稱定時(shí)器控件,用于有規(guī)律地定時(shí)執(zhí)行指定的工作如計(jì)時(shí)、倒計(jì)時(shí)、動(dòng)畫等在程序運(yùn)行階段,時(shí)鐘控件不可見。定時(shí)器以一定的時(shí)間間隔產(chǎn)生Timer事件屬性(1)Interval屬性(缺省設(shè)置為0
)單位:為毫秒(0.001秒),表示計(jì)時(shí)間隔若將Interval屬性設(shè)置為0或負(fù)數(shù),則計(jì)時(shí)器停止工作
(2)Enabled屬性(缺省設(shè)置為True)設(shè)置為True,而且Interval>0,則計(jì)時(shí)器開始工作(以Interval屬性值為間隔,觸發(fā)Timer事件)設(shè)置為False可使時(shí)鐘控件無效,即計(jì)時(shí)器停止工作。7.1.4定時(shí)器時(shí)鐘控件(Timer)又稱定時(shí)器控件,用28事件:時(shí)鐘控件只有Timer事件當(dāng)Enabled屬性值為True且Interval屬性值大于0時(shí),該事件以Interval屬性指定的時(shí)間間隔發(fā)生常常將需要定時(shí)執(zhí)行的操作放在Timer事件過程中事件:29例、設(shè)窗體上有一個(gè)標(biāo)簽Label1和一個(gè)計(jì)時(shí)器Timer1,Timer1的Interval設(shè)置為1000,Enabled設(shè)置為True。程序運(yùn)行時(shí)每秒在標(biāo)簽中顯示一次系統(tǒng)當(dāng)前時(shí)間A)PrivateSubTimer1_Timer()Label1.Caption=True
EndSub
B)PrivateSubTimer1_Timer()
Label1.Caption=Time
EndSub
C)PrivateSubTimer1_Timer()Label1.Interval=1EndSubD)PrivateSubTimer1_Timer()
Fork=lToTimer1.Interval
Label1.Caption=Timer
Nextk
EndSub
例、設(shè)窗體上有一個(gè)標(biāo)簽Label1和一個(gè)計(jì)時(shí)器Timer130例:某人在窗體上畫了一個(gè)Timer1的計(jì)時(shí)器,屬性設(shè)置為Enabled=True,Interval=0,一個(gè)標(biāo)簽Label1的并編程如下。希望在每2秒在標(biāo)簽上顯示一次系統(tǒng)當(dāng)前時(shí)間
PrivateSubTimer1_Timer()
Label1.Caption=Time
EndSub
程序執(zhí)行時(shí)發(fā)現(xiàn)未能實(shí)現(xiàn)上述目的那么應(yīng)做的修改是
A)通過屬性窗口把計(jì)時(shí)器的Interval屬性設(shè)置為2000
B)通過屬性窗口把計(jì)時(shí)器的Enabled屬生設(shè)置為False
C)把事件過程中的Label1.Caption=Time語(yǔ)句改為Timer1.Interval=Time
D)把事件過程中的Label1.Caption=Time語(yǔ)句改為L(zhǎng)abel1.Caption=Timer1.Time例:某人在窗體上畫了一個(gè)Timer1的計(jì)時(shí)器,屬性設(shè)置31例7.7設(shè)計(jì)一個(gè)倒計(jì)時(shí)應(yīng)用程序:設(shè)置Enabled=False,Interval=1000DimtAsIntegerSubCommand1_Click()t=60*Val(Text1.Text)Timer1.Enabled=TrueEndSubSubTimer1_Timer()Dimm%,sAsIntegert=t-1m=t\60s=tMod60Label1.Caption=m&"分"&s&"秒"If(t=0)ThenTimer1.Enabled=FalseMsgBox("時(shí)間到!")EndIfEndSub例7.7設(shè)計(jì)一個(gè)倒計(jì)時(shí)應(yīng)用程序:設(shè)置Enabled=Fal32例7.8用一個(gè)定時(shí)器控制蝴蝶在窗體內(nèi)的飛舞
對(duì)象名屬性設(shè)置Command1Caption退出Timer1Interval200Image1PictureBfly1.bmpImage2PictureVisibleBfly2.bmpFalseImage3PictureVisibleBfly1.bmpFalse例7.8用一個(gè)定時(shí)器控制蝴蝶在窗體內(nèi)的飛舞對(duì)象名屬性設(shè)置C33PrivateSubTimer1_Timer()StaticxAsIntegerIfx=0ThenImage1.Picture=Image2.Picturex=1ElseImage1.Picture=Image3.Picturex=0EndIfEndSubPrivateSubTimer1_Timer()34PrivateSubTimer1_Timer()StaticxAsIntegerImage1.MoveImage1.Left+150,Image1.Top–100IfImage1.Top<=0ThenImage1.Left=0Image1.Top=2320EndIfIfx=0ThenImage1.Picture=Image2.Picturex=1ElseImage1.Picture=Image3.Picturex=0EndIfEndSubPrivateSubTimer1_Timer()357.2通用對(duì)話框
VB提供了一組標(biāo)準(zhǔn)對(duì)話框利用通用對(duì)話框控件可在窗體上創(chuàng)建打開文件、保存文件、顏色、字體、打印等對(duì)話框。
工程
選定部件標(biāo)簽選定MicrosoftCommonDialogControl6.0通用對(duì)話框添加到工具箱確定7.2通用對(duì)話框VB提供了一組標(biāo)準(zhǔn)對(duì)話框工程選定部件標(biāo)36例7.9通過打開文件對(duì)話框,選擇一個(gè).bmp圖片文件,在圖形框中顯示該圖片
PrivateSubCommand1_Click()CommonDialog1.ShowOpenImage1.Picture=LoadPicture(CommonDialog1.FileName)EndSub例7.9通過打開文件對(duì)話框,選擇一個(gè).bmp圖片文件,在37通用對(duì)話框的屬性設(shè)置方法:1.在“屬性頁(yè)”對(duì)話框中設(shè)置2.在程序代碼中設(shè)置,必須設(shè)置在顯示對(duì)話框之前CommonDialog1.FileName="*.bmp“CommonDialog1.InitDir="C:\“CommonDialog1.Filter="pictures(*.bmp)|*.bmp|ALLfiles(*.*)|*.*“CommonDialog1.FilterIndex=1CommonDialog1.ShowOpen通用對(duì)話框的屬性設(shè)置方法:CommonDialog1.Fil38通用對(duì)話框的基本屬性和方法
(1)Action屬性和Show方法:打開對(duì)話框
ShowHelp6幫助(Help)對(duì)話框ShowPrinter5打印(Print)對(duì)話框ShowFont4字體(Font)對(duì)話框ShowColor3顏色(Color)對(duì)話框ShowSave2另存為(SaveAs)對(duì)話框ShowOpen1打開(Open)文件對(duì)話框Show方法Action屬性通用對(duì)話框的類型該屬性只能在程序中賦值CommonDialog1.Action=1
CommonDialog1.ShowOpen通用對(duì)話框的基本屬性和方法(1)Action屬性和Sho39通用對(duì)話框的基本屬性和方法(2)DialogTiltle屬性:設(shè)置通用對(duì)話框標(biāo)題(3)CancelError屬性:邏輯型值,表示用戶在與對(duì)話框進(jìn)行信息交換時(shí),按下“取消”按鈕時(shí)是否產(chǎn)生出錯(cuò)信息。
True:選擇取消按鈕,出現(xiàn)錯(cuò)誤信息(錯(cuò)誤標(biāo)志Err設(shè)置為32755Cancelwasselected
)False:選擇取消按鈕,沒有錯(cuò)誤警告。通用對(duì)話框的基本屬性和方法(2)DialogTiltle屬40由ShowOpen或Action屬性為1來實(shí)現(xiàn)重要屬性:(1)FileName(文件名稱):用戶所要打開的文件名(2)InitDir(初始化路徑):指定打開對(duì)話框中的初始目錄(3)Filter(過濾器):確定文件列表框中所顯示文件的類型(多組用|分隔)若在“文件類型”列表框顯示三種文件類型供用戶選擇
Documents(*.DOC)擴(kuò)展名為DOC的Word文件
TextFiles(*.TXT)擴(kuò)展名為TXT的文本文件
AllFiles(*.*)所有文件Documents(*.DOC)|*.DOC|TextFiles(*.TXT)|*.TXT|AllFiles(*.*)|*.*7.2.1打開文件對(duì)話框由ShowOpen或Action屬性為1來實(shí)現(xiàn)7.2.1打41DialogTiltleFileName
InitDirFilterFilterIndexDefaultExt(4)FilterIndex(過濾器索引)屬性:為整型值表示用戶在文件類型列表框選定了第幾組文件類型。(5)DefaultExt屬性:字符型確定保存文件的缺省擴(kuò)展名DialogTiltleFileNameInitDirFi42FilterFileNameInitDir
FilterIndexDialogTiltleFilterFileNameInitDirFilterIn43例7.10編寫一個(gè)簡(jiǎn)單的文本文件編輯程序當(dāng)用戶要求單擊“打開”就彈出打開對(duì)話框,當(dāng)用戶選擇一文本文件,便可將該文件內(nèi)容讀入到文本框;對(duì)象屬性設(shè)置TextBoxNameText1MultiLineTrueScrollBars2-VerticalCommonDialogNameCommonDialog1FileName*.TXTInitDirC:\FilterTextFiles(*.TXT)|*.TXT|AllFiles(*.*)|*.*FilterIndex1例7.10編寫一個(gè)簡(jiǎn)單的文本文件編輯程序?qū)ο髮傩栽O(shè)置Name44PrivateSubCommand1_Click()CommonDialog1.ShowOpenText1.Text=""OpenCommonDialog1.FileNameForInputAs#1DoWhileNotEOF(1)LineInput#1,inputdataText1.Text=Text1+inputdata+vbCrLfLoopClose#1EndSubPrivateSubCommand6_Click()EndEndSubPrivateSubCommand1_Click()457.2.2保存文件對(duì)話框
由ShowSave方法或Action屬性為2來實(shí)現(xiàn)與打開文件對(duì)話框的屬性基本相同特有的屬性是DefaultExt,用于設(shè)置缺省的擴(kuò)展名例7.10中另存命令按鈕編寫代碼,保存文本框內(nèi)信息SubCommand2_Click()CommonDialog1.FileName="Default.DOC"CommonDialog1.DefaultExt="DOC"CommonDialog1.ShowSave OpenCommonDialog1.FilenameForOutputAs#1Print#1,Text1.Text
Close#1 EndSub
7.2.2保存文件對(duì)話框由ShowSave方法或Act467.2.3顏色對(duì)話框
由ShowColor或Action屬性為3實(shí)現(xiàn)打開顏色對(duì)話框重要屬性Color:用來返回或設(shè)置選定的顏色例7.10顏色命令按鈕編寫事件過程設(shè)置文本框前景色SubCommand3_Click()CommonDialog1.ShowColorText1.ForeColor=CommonDialog1.ColorEndSub7.2.3顏色對(duì)話框由ShowColor或Action屬477.2.4字體對(duì)話框
由ShowFont方法或Action屬性為4來實(shí)現(xiàn)字體對(duì)話框重要的屬性有:Color,FontName,FontSize,FontBoldFontItalic,FontStrikethru,FontUnderline等
FontName
FontBold、FontItalicFontSizeFontStrikethruFontUnderline
Color7.2.4字體對(duì)話框由ShowFont方法或Action48顯示字體對(duì)話框前必須設(shè)置Flags屬性,否則發(fā)生不存在字體錯(cuò)誤Flags屬性:設(shè)置所顯示的字體類型,按下表取值常數(shù)值說明cdlCFScreenFonts&H1屏幕字體cdlCFPrinterFonts&H2打印機(jī)字體cdlCFBoth&H3打印機(jī)字體和屏幕字體cdlCFEffects&H100顯示刪除線和下劃線檢查框以及顏色組合框cdlCFEffects不能單獨(dú)使用和其他三種用Or連接使用顯示字體對(duì)話框前必須設(shè)置Flags屬性,否則發(fā)生不存在字體錯(cuò)49例7.10中的字體按鈕編寫設(shè)置文本框字體的過程PrivateSubCommand4_Click()CommonDialog1.Flags=cdlCFBothOrcdlCFEffectsCommonDialog1.ShowFontText1.FontName=CommonDialog1.FontNameText1.FontSize=CommonDialog1.FontSizeText1.FontBold=CommonDialog1.FontBoldText1.FontItalic=CommonDialog1.FontItalicText1.FontStrikethru=CommonDialog1.FontStrikethruText1.FontUnderline=CommonDialog1.FontUnderlineText1.ForeColor=CommonDialog1.ColorEndSub例7.10中的字體按鈕編寫設(shè)置文本框字體的過程507.2.5打印對(duì)話框
由ShowPrinter方法或Action屬性為5來實(shí)現(xiàn)打印對(duì)話框重要的屬性有:FromPage:整型起始頁(yè)號(hào)Topage:整型終止頁(yè)號(hào)Copies:整型打印份數(shù)FromPageTopageCopies7.2.5打印對(duì)話框由ShowPrinter方法或Act51
例10.5
例10.2中“打印...”按鈕的事件過程PrivateSubCommand5_Click()CommonDialog1.Action=5Fori=1ToCommonDialog1.CopiesPrinter.PrintText1.TextNextiPrinter.EndDocEndSub例10.5例10.2中“打印...”按鈕的事件過程52對(duì)上述程序,下列敘述中錯(cuò)誤的是A)單擊“打開”按鈕顯示打開文件對(duì)話框
B)單擊“保存”按鈕顯示保存文件對(duì)話框
C)單擊“打印”按鈕,能夠設(shè)置打印選項(xiàng),并執(zhí)行打印操作
D)單擊“退出”按鈕,結(jié)束程序的運(yùn)行例、窗體上有一個(gè)名稱為CD1的通用對(duì)話框控件和由四個(gè)命令按鈕組成的控件數(shù)Command1,其下標(biāo)從左到右分別為0、1、2、3,窗體外觀如圖所示
PrivateSubCommand1_Click(IndexAsInteger)
SelectCaseIndex
Case0
CD1.Action=1
Case1
CD1.ShowSave
Case2
CD1.Action=5
Case3
End
EndSelectEndSub對(duì)上述程序,下列敘述中錯(cuò)誤的是例、窗體上有一個(gè)名稱為CD1的53例:在窗體上有1個(gè)名為Cd1的通用對(duì)話框,為了在運(yùn)行程序時(shí)打開保存文件對(duì)話框,則在程序總應(yīng)使用的語(yǔ)句是()
A)Cd1.Action=2
B)Cd1.Action=1
C)Cd1.ShowSave=Ture
D)Cd1.ShowSave=0
例:在窗體上有1個(gè)名為Cd1的通用對(duì)話框,為了在547.3菜單設(shè)計(jì)
菜單是Windows應(yīng)用程序中十分關(guān)鍵的要素之一,它以分組的形式組織多個(gè)命令或操作,為用戶靈活操作應(yīng)用程序提供了便捷的手段。菜單可分為兩種基本類型:下拉式和彈出式菜單下拉式菜單:一般通過單擊菜單欄中菜單標(biāo)題(如“文件”、“編輯”、“視圖”等)的方式打開彈出式菜單:則通過用鼠標(biāo)右鍵單擊某一區(qū)域打開快捷鍵熱鍵子菜單標(biāo)記主菜單菜單項(xiàng)子菜單名分隔線7.3菜單設(shè)計(jì)菜單是Windows應(yīng)用程557.3.1菜單編輯器
菜單列表框菜單項(xiàng)屬性
操作按鈕分隔線:在標(biāo)題欄輸入一個(gè)連字符“-”啟動(dòng)菜單編輯器:“工具”———“菜單編輯器”7.3.1菜單編輯器菜單列表框菜單項(xiàng)屬性操作按鈕分隔56菜單編輯器的使用技巧1.標(biāo)題(Caption)2.名稱(Name)3.快捷鍵(Shortcut)4.下一個(gè)(Next)5.←和→按鈕6.插入(Insert)按鈕7.刪除(Delete)按鈕8.↓和↑按鈕 9.復(fù)選Checked檢查框10.有效Enabled,可見Visible檢查框根據(jù)設(shè)計(jì)要求,依次輸入或選擇項(xiàng)目,即可菜單編輯器的使用技巧1.標(biāo)題(Caption)根據(jù)設(shè)計(jì)要求571.標(biāo)題(Caption):若輸入文件(&F)熱鍵:Alt+F
2.名稱(Name): 菜單項(xiàng)的名稱,分界符-也應(yīng)有名稱3.快捷鍵(Shortcut):下拉列表框選擇一個(gè)鍵4.下一個(gè)(Next): 設(shè)置下一個(gè)菜單項(xiàng)5.←和→:“→”下一級(jí)菜單項(xiàng);“←”上一級(jí)菜單項(xiàng)6.插入(Insert)按鈕:插入菜單項(xiàng)7.刪除(Delete)按鈕:刪除菜單項(xiàng)8.↓和↑按鈕: 改變菜單項(xiàng)位置9.復(fù)選(Checked)檢查框:菜單項(xiàng)為選定項(xiàng)10.有效(Enabled)檢查框:True:菜單項(xiàng)可選;False:不可選。1.標(biāo)題(Caption):若輸入文件(&F)熱鍵:Alt58菜單項(xiàng)除了Name、Visible、Enabled等屬性之外,還具有下列重要屬性:(1)標(biāo)題(Caption)菜單項(xiàng)上顯示的標(biāo)題文本在字符前加一個(gè)&符號(hào)構(gòu)成熱鍵。例如:輸入“新建(&N)”,則菜單顯示“新建(N)”,N為熱鍵(用Alt+N來打開菜單)菜單項(xiàng)的分隔符,輸入一個(gè)減號(hào)“-”。(2)Checked控制菜單項(xiàng)左邊是否顯示“√”菜單項(xiàng)的事件Click
為菜單項(xiàng)編寫程序菜單項(xiàng)除了Name、Visible、Enabled等屬性之外591.設(shè)計(jì)下拉菜單:2.設(shè)計(jì)子菜單或改變子菜單級(jí)別:3.為菜單項(xiàng)分組:菜單名用減號(hào)“-”4.為菜單項(xiàng)指定訪問鍵和快捷鍵5.為菜單項(xiàng)加上復(fù)選標(biāo)記6.禁止使用菜單項(xiàng)在程序代碼中可以通過程序代碼:菜單名.Enabled=False7.菜單項(xiàng)的增減
菜單設(shè)計(jì)的步驟:1.設(shè)計(jì)下拉菜單:菜單設(shè)計(jì)的步驟:60例7.15將例7.10中的命令組織成菜單在窗體上放置一個(gè)文本框,一個(gè)通用對(duì)話框標(biāo)題名稱快捷鍵標(biāo)題名稱快捷鍵文件File編輯Edit…新建NewCtrl+N…復(fù)制CopyCtrl+C…打開OpenCtrl+O…剪切CutCtrl+X…另存為SaveAsCtrl+S…粘貼PasteCtrl+V…打印Print格式Format…結(jié)束Exit…字體Font…顏色Color例7.15將例7.10中的命令組織成菜單標(biāo)題名稱快捷鍵標(biāo)題名61PrivateSubOpen_Click()CommonDialog1.ShowOpenText1.Text=""OpenCommonDialog1.FileNameForInputAs#1DoWhileNotEOF(1)LineInput#1,inputdataText1.Text=Text1+inputdata+vbCrLfLoopClose#1EndSubPrivateSubNew_Click()Text1.Text=""EndSubPrivateSubOpen_Click()62DimstAsStringPrivateSubCopy_Click()st=Text1.SelTextEndSubPrivateSubCut_Click()st=Text1.SelTextText1.SelText="“EndSubPrivateSubPaste_Click()Text1.SelText=stEndSubPrivateSubExit_Click()EndEndSubDimstAsString637.3.2彈出菜單
用戶在某個(gè)對(duì)象上單擊鼠標(biāo)右鍵時(shí)的位置,彈出菜單項(xiàng)設(shè)計(jì)過程與普通菜單相同。菜單彈出的方法:對(duì)象.PopupMenu菜單名,標(biāo)志參數(shù),x,y菜單名不能省略標(biāo)志參數(shù),表示彈出的位置和性能,用Or組合x,y:指定彈出菜單顯示的位置分類常數(shù)值說明位置vbPopupMenuLeftAlign0x位置確定彈出菜單的左邊界(默認(rèn))vbPopupMenuCenterAlign4彈出菜單以x為中心vbPopupMenuRightAlign8x位置確定彈出菜單的右邊界性能vbPopupMenuLeftButton0鼠標(biāo)左鍵彈出菜單vbPopupMenuRightButton2鼠標(biāo)右鍵彈出菜單7.3.2彈出菜單用戶在某個(gè)對(duì)象上單擊鼠標(biāo)右鍵時(shí)的位置64為創(chuàng)建一個(gè)不顯示在菜單欄里的菜單,可在設(shè)計(jì)時(shí)使頂級(jí)菜單項(xiàng)目為不可見(“Visible”復(fù)選框沒有被選上)當(dāng)VB顯示一個(gè)彈出式菜單時(shí),指定的頂級(jí)菜單的Visible屬性會(huì)被忽略例:實(shí)現(xiàn)彈出式菜單標(biāo)題名稱標(biāo)題名稱字體txtfont形式Styl…宋體st…粗體ct…楷體kt…斜體xt…黑體ht…下劃線xhx為創(chuàng)建一個(gè)不顯示在菜單欄里的菜單,可在設(shè)計(jì)時(shí)使例:實(shí)現(xiàn)彈出式65PrivateSubLabel1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) IfButton=2Then PopupMenuStyl,6 EndIfEndSubPrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) IfButton=2Then PopupMenutxtfont,6 EndIfEndSubPrivateSubLabel1_MouseDown(B667.4多重窗體
指一個(gè)應(yīng)用程序中有多個(gè)并列的普通窗體,每個(gè)窗體有自己的界面和代碼,完成不同的功能1.添加窗體工程——添加窗體,每個(gè)窗體有獨(dú)立的Form文件,同一工程不能有相同名稱的窗體。2.設(shè)置啟動(dòng)對(duì)(開始窗體)工程工程1屬性啟動(dòng)對(duì)象(缺省為Form1窗體)7.4多重窗體指一個(gè)應(yīng)用程序中有多個(gè)并列的普通窗體,每67SubMain過程:需要在啟動(dòng)程序時(shí)執(zhí)行一個(gè)特定的過程。在VB中,這樣的過程稱為啟動(dòng)過程,并命名為SubMainSubMain過程不能在窗體模塊內(nèi),必須在標(biāo)準(zhǔn)模塊中。其建立方法如下:1)選擇“工程”菜單中的“添加模塊”菜單項(xiàng)2)在該模塊(默認(rèn)名稱為Module1)的代碼窗口中鍵入:SubMain后按回車鍵,系統(tǒng)自動(dòng)給出過程的開始行和結(jié)束行3)在其中輸入過程代碼,并保存模塊文件Module1.bas4)選擇“工程”菜單中的“工程屬性”菜單項(xiàng),打開“工程屬性”對(duì)話框5)選擇“通用”選項(xiàng)卡,在“啟動(dòng)對(duì)象”下拉列表中,選擇SubMain,并按“確定”按鈕SubMain過程:需要在啟動(dòng)程序時(shí)執(zhí)行一個(gè)特定的過程。在68窗體語(yǔ)句和方法(1)Load語(yǔ)句:裝入窗體到內(nèi)存可以引用窗體中的各對(duì)象,如控件及其各種屬性,但此時(shí)窗體沒有顯示出來形式:Load窗體名稱(2)Unload語(yǔ)句從內(nèi)存刪除窗體形式:
Unload窗體名稱或
UnloadMe(3)Show方法:顯示窗體(加載并顯示兩種功能)形式:
窗體名稱.Show
模式
模式為0:可以同時(shí)對(duì)其它窗體進(jìn)行操作(默認(rèn)值)模式為1:關(guān)閉才能對(duì)其它窗體進(jìn)行操作
(4)Hide方法:隱藏窗體(沒從內(nèi)存刪掉)形式:
窗體名稱.Hide窗體語(yǔ)句和方法(1)Load語(yǔ)句:裝入窗體到內(nèi)存可以引用窗體69不同窗體數(shù)據(jù)的存取(1)直接訪問另一個(gè)窗體上的控件數(shù)據(jù)另一個(gè)窗體名.控件名.屬性
Text1=Val(Form2.Text1)+Val(Form2.Text2)(2)訪問另一個(gè)窗體中的全局變量另一個(gè)窗體名.全局變量名(3)在模塊定義公共變量,實(shí)現(xiàn)相互訪問在Module1定義變量:PublicxAsString不同窗體數(shù)據(jù)的存取(1)直接訪問另一個(gè)窗體上的控件數(shù)據(jù)70例:應(yīng)用程序增加一個(gè)“登錄”窗體來控制非法用戶使用在窗體Form2中輸入密碼,正確后彈出窗體Form1選擇Form2作為啟動(dòng)窗體在窗體Form1中編輯代碼PrivateSubForm_Load()Label1.Caption="歡迎使用"&Chr(13)&"飛騰公司銷售系統(tǒng)"EndSub例:應(yīng)用程序增加一個(gè)“登錄”窗體來控制非法用戶使用在窗體Fo71在窗體Form2中編輯代碼
PrivateSubCommand1_Click() IfLCase(Text1.Text)="abcde"Then UnloadForm2
Form1.Show Else MsgBox"對(duì)不起,口令錯(cuò)!" Text1.Text="" Text1.SetFocus EndIfEndSubPrivateSubCommand2_Click() EndEndSub在窗體Form2中編輯代碼72例7.17多重窗體應(yīng)用:輸入學(xué)生五門課程的成績(jī),計(jì)算總分及平均分并在不同窗體內(nèi)顯示在窗體Module1中通用處編輯代碼PublicMath!,Physics!,Chemistry!,Chinese!,English
AsInterger例7.17多重窗體應(yīng)用:輸入學(xué)生五門課程的成績(jī),計(jì)算在窗體M73在窗體Form1中編輯代碼PrivateSubCommand1_Click()Form1.Hide:Form2.ShowEndSubPrivateSubCommand2_Click()Form1.Hide:Form3.ShowEndSubPrivateSubCommand3_Click()EndEndSub在窗體Form2中編輯代碼PrivateSubCommand1_Click()Math=Val(Text1.Text)Physics=Val(Text2.Text)Chemistry=Val(Text3.Text)Chinese=Val(Text4.Text)English=Val(Text5.Text)Form2.Hide:Form1.ShowEndSub在窗體Form1中編輯代碼74在窗體Form3中編輯代碼PrivateSubCommand1_Click()Form3.HideForm1.ShowEndSubPrivateSubForm_Activate()DimTotalAsSingleTotal=Math+Physics+Chemistry+Chinese+EnglishText1.Text=Total/5Text2.Text=TotalEndSub在窗體Form3中編輯代碼757.5鼠標(biāo)和鍵盤
7.5.1鼠標(biāo)鼠標(biāo)事件需要注意事件發(fā)生在哪一個(gè)對(duì)象上Click、DblClick事件MouseDown:按下任意一個(gè)鼠標(biāo)按鈕時(shí)被觸發(fā)MouseUp:釋放任意一個(gè)鼠標(biāo)按鈕時(shí)被觸發(fā)MouseMove:移動(dòng)鼠標(biāo)時(shí)被觸發(fā)7.5鼠標(biāo)和鍵盤7.5.1鼠標(biāo)76MouseMove、MouseDown、MouseUp三個(gè)事件的過程的語(yǔ)法格式如下:SubObject_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)SubObject_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)SubObject_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)其中:1.Object是可選的一個(gè)對(duì)象表達(dá)式,可以是窗體對(duì)象和大多數(shù)可視控件。2.Button參數(shù)是表示按下或松開鼠標(biāo)哪個(gè)按鈕
MouseMove、MouseDown、MouseUp三個(gè)事77參數(shù)Button值參數(shù)(Button) 值 說明vbLeftButton 1 左按鈕被按下vbRightButton 2 右按鈕被按下vbMiddleButton 4 中間按鈕被按下Shift參數(shù):包含了鍵盤的Shift、Ctrl和Alt鍵的狀態(tài)信息參數(shù)Shift值參數(shù)(Shift)值 描述vbShiftMask1 SHIFT鍵被按下vbCtrlMask 2 CTRL鍵被按下vbAltMask 4 ALT鍵被按下參數(shù)X、Y:X,Y鼠標(biāo)指針的坐標(biāo)位置參數(shù)Button值S78例7.18顯示鼠標(biāo)器指針?biāo)傅奈恢肞rivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Text1.Text=XText2.Text=YEndSub
例7.18顯示鼠標(biāo)器指針?biāo)傅奈恢?9例7.19設(shè)計(jì)一個(gè)最簡(jiǎn)單的畫圖程序。程序運(yùn)行時(shí),按住鼠標(biāo)右鍵移動(dòng)畫圓,按住鼠標(biāo)左鍵移動(dòng)畫線。DimDrawStateAsBooleanDimPreXAsSingleDimPreYAsSinglePrivateSubForm_Load()DrawState=FalseEndSubPrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=1ThenDrawState=TruePreX=XPreY=YEndIfIfButton=2ThenCircle(X,Y),280EndIfEndSub例7.19設(shè)計(jì)一個(gè)最簡(jiǎn)單的畫圖程序。程序運(yùn)行時(shí),按住80PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfDrawState=TrueThenLine(PreX,PreY)-(X,Y)PreX=XPreY=YEndIfEndSubPrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=1ThenDrawState=FalseEndIfEndSubPrivateSubForm_MouseMove(But81例:在菜單編輯器中建立1個(gè)名稱為Menu0的菜單項(xiàng),將其“可見”屬性設(shè)置為False,并建立若干子菜單
PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfButton=1Then
PopupMenuMenu0
EndIf
EndSub
則以下敘述中錯(cuò)誤的是。
A)該過程的作用是彈出一個(gè)菜單
B)單擊鼠標(biāo)右鍵時(shí)彈出菜單
C)Menu0是在菜單編輯器中定義的彈出菜單的名稱
D)參數(shù)X、Y指明鼠標(biāo)當(dāng)前位置的坐標(biāo)例:在菜單編輯器中建立1個(gè)名稱為Menu0的菜單項(xiàng),827.5.2鍵盤
KeyPress、KeyDown、KeyUp三種鍵盤事件,窗體和接受鍵盤輸入的控件都識(shí)別這三種事件
KeyPress:按下并釋放對(duì)應(yīng)某ASCII字符的鍵KeyDown:按下鍵盤的任意鍵KeyUp:釋放鍵盤的任意鍵1.KeyPress事件當(dāng)用戶按下和松開一個(gè)ASCII字符鍵時(shí)發(fā)生。該事件被觸發(fā)時(shí),被按鍵的ASCII碼將自動(dòng)傳遞給事件過程的KeyAscii參數(shù)格式是:SubObject_KeyPress(KeyAsciiAsInteger)7.5.2鍵盤KeyPress、KeyDown、Key83例如,如果希望將文本框中的所有字符都強(qiáng)制轉(zhuǎn)換為大寫字符,則可在輸入時(shí)使用此事件轉(zhuǎn)換大小寫:PrivateSubText1_KeyPress(KeyAsciiAsInteger)KeyAscii=Asc(Ucase(Chr(KeyAscii)))EndSub例如,如果希望將文本框中的所有字符都強(qiáng)制轉(zhuǎn)換為大寫字符,則可842.KeyDown事件和KeyUp事件當(dāng)焦點(diǎn)在某個(gè)對(duì)象時(shí),用戶按下鍵盤上的任一鍵,便引發(fā)該對(duì)象KeyDown事件,釋放按鍵便觸發(fā)KeyUp事件(窗體的KeyPreview屬性設(shè)置為Ture)PrivateSub對(duì)象名_KeyDown(KeyCodeAsInteger,ShiftAsInteger)PrivateSub對(duì)象名_KeyUp(KeyCodeAsInteger,ShiftAsInteger)KeyCode參數(shù)項(xiàng)用于返回被按鍵的掃描代碼由于掃描碼主要反映物理鍵位,因此通過該參數(shù)不能區(qū)分字母大小寫。所以“A”和“a”的keycode都是由Asc(“A”)值上檔鍵字符和下檔鍵字符也是使用同一鍵,它們的Keycode值相同2.KeyDown事件和KeyUp事件852.shift參數(shù)shift 表示是在該事件發(fā)生時(shí)響應(yīng)SHIFT、CTRL和ALT鍵的狀態(tài),它是一個(gè)整數(shù)。其含義與上一節(jié)中MouseMove、MouseDown、MouseUp事件中的shift參數(shù)完全相同;例7.20編寫程序按下Alt+F5組合鍵可終止程序的運(yùn)行PrivateSubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger)If(KeyCode=vbKeyF5)And(Shift=4)ThenEndEndIfEndSub2.shift參數(shù)例7.20編寫程序按下Alt+F5組合鍵可86例、文本框Text1的KeyDown事件過程如下:
PrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
EndSub
其中參數(shù)KeyCode的值表示的是發(fā)生此事件時(shí)A)是否按下了Alt鍵或Ctrl鍵B)按下的是哪個(gè)數(shù)字鍵
C)所按的鍵盤鍵的鍵碼D)按下的是哪個(gè)鼠標(biāo)鍵
例、文本框Text1的KeyDown事件過程如下:
Priv87例、窗體上有兩個(gè)Text1、Text2的文本框。Text1的KeyUp的事件過程如下:
PrivateSubText1_KeyUp(KeyCodeAsInteger,shiftASInteger)
DimxASStringx=KeyCodeText2.Text=Chr(x+3)
EndSub
當(dāng)向文本框Text1中輸入小寫字母a時(shí),文本框Text2中顯示的是
A)AB)aC)DD)d
例、窗體上有兩個(gè)Text1、Text2的文本框。88例:在窗體上畫一個(gè)命令按鈕和兩上文本,分別為
Command1、Text1和Text2,然后編寫如下程序:
DimS1AsString,S2AsString
PrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
S2=S2&Chr(KeyCode)
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
S1=S1&chr(KeyAscii)
EndSub
PrivateSubCommand1_Click()
Text1.Text=S2:Text2.Text=S1
EndSub
程序運(yùn)行后,在Text1中輸入“abc”,然后單擊命令按鈕,在文本框Text1和Text2中顯示的內(nèi)容分別為
A)abc和ABCB)abc和abcC)ABC和abcD)ABC和ABC
例:在窗體上畫一個(gè)命令按鈕和兩上文本,分別為89例:在窗體上畫1個(gè)命令按鈕和1個(gè)文本框,分別為Command1和Text1,寫如下代碼:
DimSaveAllAsString
PrivateSubCommand1_Click()
Text1.Text=Left(UCase(SaveAll),4)
EndSub
PrivateSubText1_KeyPress(KeyAsci
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國(guó)銅纜高速連接器行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 餐飲業(yè)合同年
- 房屋租賃續(xù)簽合同模板
- 個(gè)人借款合同簡(jiǎn)易模板
- 個(gè)人之間借款合同格式
- 建筑工程機(jī)械租賃合同例文
- 2025勞動(dòng)合同終止 賠償
- 2025企業(yè)單位聘用員工勞動(dòng)合同
- 2025年浙教版九年級(jí)地理上冊(cè)階段測(cè)試試卷含答案
- 蔬菜銷售合同
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院高職單招高職單招英語(yǔ)2016-2024歷年頻考點(diǎn)試題含答案解析
- 醫(yī)保政策與健康管理培訓(xùn)計(jì)劃
- 策略與博弈杜塔中文版
- 無人化農(nóng)場(chǎng)項(xiàng)目可行性研究報(bào)告
- 2024屆上海市金山區(qū)高三下學(xué)期二模英語(yǔ)試題(原卷版)
- 學(xué)生春節(jié)安全教育
- 2024-2025年校長(zhǎng)在教研組長(zhǎng)和備課組長(zhǎng)會(huì)議上講話
- 2025屆江蘇省常州市高級(jí)中學(xué)高三第二次模擬考試語(yǔ)文試卷含解析
- 高三日語(yǔ)一輪復(fù)習(xí)助詞「で」的用法課件
- 2024-2030年中國(guó)銣銫及其化合物行業(yè)深度調(diào)研及投資戰(zhàn)略分析報(bào)告
- 散貨物流行業(yè)市場(chǎng)調(diào)研分析報(bào)告
評(píng)論
0/150
提交評(píng)論