![Visual Basic程序設(shè)計(jì)簡明教程(第二版)課件:過程_第1頁](http://file4.renrendoc.com/view8/M00/24/0D/wKhkGWcw3ImAShCzAAD0YPHzggE353.jpg)
![Visual Basic程序設(shè)計(jì)簡明教程(第二版)課件:過程_第2頁](http://file4.renrendoc.com/view8/M00/24/0D/wKhkGWcw3ImAShCzAAD0YPHzggE3532.jpg)
![Visual Basic程序設(shè)計(jì)簡明教程(第二版)課件:過程_第3頁](http://file4.renrendoc.com/view8/M00/24/0D/wKhkGWcw3ImAShCzAAD0YPHzggE3533.jpg)
![Visual Basic程序設(shè)計(jì)簡明教程(第二版)課件:過程_第4頁](http://file4.renrendoc.com/view8/M00/24/0D/wKhkGWcw3ImAShCzAAD0YPHzggE3534.jpg)
![Visual Basic程序設(shè)計(jì)簡明教程(第二版)課件:過程_第5頁](http://file4.renrendoc.com/view8/M00/24/0D/wKhkGWcw3ImAShCzAAD0YPHzggE3535.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2024/11/111過程本章內(nèi)容:
概述
子過程
函數(shù)過程
事件過程
參數(shù)傳遞的方式
嵌套調(diào)用與遞歸調(diào)用
作用域與生存期
滾動(dòng)條
直線和形狀2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》27.1概述VB的應(yīng)用程序是由過程(Procedure)組成的,代碼設(shè)計(jì)階段的主要工作就是編寫過程。VB通過事件驅(qū)動(dòng)方式執(zhí)行程序,調(diào)用事件過程完成對(duì)事件的響應(yīng)。事件過程(EventProcedure)雖然是VB程序的主體,但是有時(shí)也需要在程序中編寫通用過程,供事件過程或者其他通用過程調(diào)用。如果過程A調(diào)用了過程B,則約定把A稱為主調(diào)過程,B稱為被調(diào)過程。
2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》3說明:根據(jù)通用過程是否有返回值,可以分為Sub過程和Function過程。Sub過程又稱為子過程,它往往用于完成一些操作,而這些操作不需要有返回值。Function過程又稱為函數(shù)過程,或者簡稱為函數(shù)。函數(shù)過程一般應(yīng)有一個(gè)返回值。返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》47.2子過程——子過程的定義[Public|Private]Sub過程名([形參列表])
變量定義語句執(zhí)行語句
[ExitSub]EndSub2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》5說明:⒈關(guān)鍵字Sub指明了過程的性質(zhì),關(guān)鍵字Public和Private則指明了過程的作用域。⒉括號(hào)內(nèi)為形參列表,用于從主調(diào)過程接收數(shù)據(jù)。如果過程不需要參數(shù),則可以省略形參列表。形參由傳遞方式、形參名和類型組成,形參之間用逗號(hào)分開。形參定義的格式是:
[ByVal]形參名[As數(shù)據(jù)類型]ByVal是對(duì)形參進(jìn)行傳遞方式聲明,表示所聲明的形參是傳值參數(shù)。如果ByVal被省略,則默認(rèn)該形參是引用參數(shù)(ByRef)。⒊過程頭部和EndSub之間的部分稱為過程體,可以在過程體中定義變量,過程完成的工作主要是在過程體中進(jìn)行的。⒋如果在運(yùn)行子過程時(shí)需要提前退出,則可以使用ExitSub語句。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》6創(chuàng)建子過程
第一種方法是在代碼窗口中直接定義,輸入過程頭部之后按下回車鍵,此時(shí)會(huì)自動(dòng)出現(xiàn)EndSub,從而生成過程的框架。第二種方法是使用“添加過程”對(duì)話框,在“工具”菜單中選擇“添加過程”命令,打開“添加過程”對(duì)話框。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》77.2子過程——子過程的調(diào)用通用過程不屬于任何一個(gè)對(duì)象,它不由事件驅(qū)動(dòng),必須由其他過程調(diào)用才會(huì)被執(zhí)行。子過程調(diào)用語句有兩種形式:
Call過程名[(實(shí)參列表)]
過程名[實(shí)參列表]2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》8說明:(1)第一種調(diào)用形式使用了關(guān)鍵字Call,而第二種調(diào)用形式不僅沒有Call,并且也沒有括號(hào)。(2)實(shí)參即實(shí)際參數(shù),表示傳遞給被調(diào)過程的一些必要數(shù)據(jù),實(shí)參之間用逗號(hào)隔開。如果調(diào)用時(shí)沒有實(shí)參,則可以省略實(shí)參列表和括號(hào)。(3)主調(diào)過程調(diào)用被調(diào)過程時(shí),經(jīng)常需要向被調(diào)過程傳遞一些數(shù)據(jù),這主要是通過實(shí)參與形參的結(jié)合來完成的。形參是變量,過程調(diào)用時(shí)才被分配內(nèi)存空間,過程調(diào)用語句中的實(shí)參會(huì)把數(shù)據(jù)傳遞給相應(yīng)的形參。(4)VB語言要求實(shí)參與形參個(gè)數(shù)相等,類型盡量保持一致。實(shí)參向形參傳遞數(shù)據(jù)時(shí),遵循從左向右,一一對(duì)應(yīng)的規(guī)則。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》9例7.1
計(jì)算n!
PrivateSubCommand1_Click()DimnAsIntegern=Val(Text1.Text)Callfac(n)'調(diào)用子過程
EndSub2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》10
PrivateSubfac(ByValnAsInteger)DimsAsLong,iAsIntegers=1Fori=1Tons=s*iNextiText2.Text=Str(s)'輸出n的階乘
EndSub返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》117.3函數(shù)過程——函數(shù)過程的定義[Public|Private]Function過程名([形參列表])[As類型]
變量定義語句執(zhí)行語句
[ExitFunction]EndFunction2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》12說明:(1)函數(shù)過程的語法與子過程非常相似,其定義的關(guān)鍵字是Function。(2)過程頭部右端的[As類型]是指函數(shù)過程的類型,即返回值的類型。(3)函數(shù)過程的返回值通過對(duì)函數(shù)名賦值來指定,如下所示:函數(shù)名=表達(dá)式這樣的賦值語句在函數(shù)過程的過程體中一般至少應(yīng)出現(xiàn)一次,作用是確定函數(shù)過程的返回值。一旦調(diào)用結(jié)束,系統(tǒng)就會(huì)把返回值帶回到主調(diào)過程的調(diào)用處。(4)如果在運(yùn)行函數(shù)過程時(shí)需要提前退出,則可以使用ExitFunction語句。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》13變量=函數(shù)過程名([實(shí)參列表])函數(shù)調(diào)用作為表達(dá)式,出現(xiàn)在賦值語句的右側(cè)。調(diào)用時(shí)應(yīng)給出相應(yīng)的實(shí)參列表,使得實(shí)參與形參相結(jié)合。執(zhí)行這條賦值語句時(shí),先對(duì)函數(shù)過程進(jìn)行調(diào)用,然后把過程的返回值帶回來并賦給某個(gè)變量,從而使主調(diào)過程獲得這個(gè)返回值。7.3函數(shù)過程——函數(shù)過程的調(diào)用2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》14例7.3
計(jì)算n!
PrivateSubCommand1_Click()DimsAsLong,nAsIntegern=Val(Text1.Text)s=fac(n)'調(diào)用函數(shù)過程,得到返回值
Text2.Text=Str(s)EndSubPrivateFunctionfac(ByValnAsInteger)AsLong'定義函數(shù)過程
DimsAsLong,iAsIntegers=1Fori=1Tons=s*iNextifac=s'確定函數(shù)過程的返回值
EndFunction返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》157.4事件過程PrivateSub對(duì)象名_事件名([形參列表])
變量定義語句執(zhí)行語句
EndSub]2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》16說明:(1)事件過程的名字是由對(duì)象名、下劃線(_)和事件名組成,對(duì)象可以是窗體或者控件。(2)單擊和雙擊等事件的事件過程是沒有參數(shù)的,而有些事件過程則需要參數(shù),以接收必要的數(shù)據(jù)。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》17例7.5
設(shè)計(jì)一個(gè)簡易的計(jì)算器
在框架Frame1中創(chuàng)建一個(gè)命令按鈕控件數(shù)組Command1,它有4個(gè)元素,分別對(duì)應(yīng)“+”、“-”、“×”和“÷”等4個(gè)命令按鈕。創(chuàng)建一個(gè)文本框控件數(shù)組Text1,它有3個(gè)元素,第一個(gè)元素對(duì)應(yīng)的文本框負(fù)責(zé)輸入左操作數(shù),第二個(gè)元素對(duì)應(yīng)的文本框負(fù)責(zé)輸入右操作數(shù),第三個(gè)元素對(duì)應(yīng)的文本框則負(fù)責(zé)輸出運(yùn)算的結(jié)果。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》18PrivateSubCommand1_Click(IndexAsInteger)Label2.Caption=Command1(Index).Caption'顯示運(yùn)算符
SelectCaseIndexCase0'加
Text1(2).Text=Val(Text1(0).Text)+Val(Text1(1).Text)Case1'減
Text1(2).Text=Val(Text1(0).Text)-Val(Text1(1).Text)Case2'乘
Text1(2).Text=Val(Text1(0).Text)*Val(Text1(1).Text)Case3'除
IfVal(Text1(1).Text)<>0Then'除數(shù)不能為0Text1(2).Text=Val(Text1(0).Text)/Val(Text1(1).Text)ElseMsgBox("除數(shù)不能為0!")Text1(1).Text=""Text1(1).SetFocusEndIfEndSelectEndSubPrivateSubCommand2_Click()DimiAsIntegerFori=0To2Text1(i).Text=""'清除操作數(shù)和運(yùn)算結(jié)果
NextiLabel2.Caption=""'清除運(yùn)算符
EndSub簡易計(jì)算器的代碼實(shí)現(xiàn)2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》19PrivateSubText1_KeyPress(IndexAsInteger,KeyAsciiAsInteger)IfKeyAscii=13Then'按下回車鍵
IfIsNumeric(Text1(Index).Text)=FalseThenMsgBox("必須輸入數(shù)字!")Text1(Index).Text=""Text1(Index).SetFocusEndIfEndIfEndSub簡易計(jì)算器的代碼實(shí)現(xiàn)返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》207.5參數(shù)傳遞的方式——傳值調(diào)用時(shí)把實(shí)參的值從左至右,一一傳遞給各個(gè)形參。這種傳遞是單向的,形參的值發(fā)生變化,對(duì)實(shí)參毫無影響。實(shí)參1形參1實(shí)參2形參22024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》21例7.6
交換兩個(gè)整型變量的值
Subswap(ByValaAsInteger,ByValbAsInteger)'傳值方式
DimtAsIntegert=aa=bb=tEndSub2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》227.5參數(shù)傳遞的方式——傳引用如果用ByRef對(duì)形參進(jìn)行聲明,則表示該參數(shù)在調(diào)用時(shí)采用傳引用方式。傳引用調(diào)用時(shí)形參的值發(fā)生變化,會(huì)使實(shí)參的值也同步發(fā)生變化。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》23例7.7
傳值與傳引用
PrivateSubCommand1_Click()DimxAsInteger,yAsIntegerx=1y=2Print"過程調(diào)用之前:"Print"x=";x;"y=";yCallfun(x,y)'調(diào)用子過程
Print"過程調(diào)用之后:"Print"x=";x;"y=";yEndSubSubfun(ByValxAsInteger,ByRefyAsInteger)x=x+1y=y+1'修改了實(shí)參y的值
Print"過程調(diào)用中:"Print"x=";x;"y=";yEndSub2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》247.5參數(shù)傳遞的方式——傳數(shù)組可以采用傳數(shù)組的方式傳遞成批的數(shù)據(jù),具體實(shí)現(xiàn)的方法是:1.過程的形參為動(dòng)態(tài)數(shù)組,形參數(shù)組的類型必須與實(shí)參數(shù)組的類型一致。2.過程調(diào)用時(shí),數(shù)組名作為過程的實(shí)參。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》25例7.9
求某班VB考試的平均成績
ConstNAsInteger=30PrivateSubCommand1_Click()Dima(1ToN)AsInteger,iAsInteger,averAsSingleFori=1ToN'輸入學(xué)生成績
a(i)=Val(InputBox("請(qǐng)輸入第"&i&"位學(xué)生的成績"))Nextiaver=average(a)'調(diào)用函數(shù)過程
Picture1.Print"平均成績是";averEndSubFunctionaverage(b()AsInteger)AsSingle'定義函數(shù)過程
DimiAsInteger,sumAsIntegersum=0Fori=LBound(b)ToUBound(b)'累加學(xué)生成績
sum=sum+b(i)Nextiaverage=sum/N'確定平均成績是函數(shù)返回值
EndFunction返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》267.6嵌套調(diào)用與遞歸調(diào)用VB語言規(guī)定,過程的定義不能嵌套,過程的調(diào)用可以嵌套。遞歸調(diào)用是一種既有趣又實(shí)用的過程調(diào)用形式,它是嵌套調(diào)用的特例。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》277.6嵌套調(diào)用與遞歸調(diào)用——嵌套調(diào)用過程A在執(zhí)行時(shí)調(diào)用了過程B,過程B在執(zhí)行時(shí)又調(diào)用了過程C,這種現(xiàn)象稱為嵌套調(diào)用。嵌套調(diào)用的執(zhí)行特點(diǎn)可以總結(jié)為一句話:層層調(diào)用,逐級(jí)返回?!瑿allB(…)…………CallC(…)……………………過程A過程B過程C2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》287.6嵌套調(diào)用與遞歸調(diào)用——遞歸調(diào)用在過程的過程體內(nèi)出現(xiàn)直接或間接調(diào)用自身的語句,即過程在執(zhí)行期間又調(diào)用自己的現(xiàn)象,稱為遞歸調(diào)用。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》29例7.11
遞歸調(diào)用求n!
PrivateSubCommand1_Click()DimsAsLong,nAsIntegern=Val(Text1.Text)s=fac(n)'調(diào)用函數(shù)過程
Text2.Text=Str(s)EndSubPrivateFunctionfac(ByValnAsInteger)AsLong'定義函數(shù)過程
DimsAsLong,iAsIntegerIfn=1Thens=1Elses=n*fac(n-1)'遞歸調(diào)用
EndIffac=s'確定函數(shù)過程的返回值
EndFunction2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》30計(jì)算4!的遞歸過程:
……s=4*fac(3)fac(4)fac(3)fac(2)fac(1)……s=3*fac(2)……s=2*fac(1)……s=12024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》31遞歸要素:遞歸公式。使得遞歸調(diào)用不斷進(jìn)行下去的因素,在本例中,遞歸公式是n!=n×(n-1)!。遞歸終止條件。使得遞歸調(diào)用最終結(jié)束的條件,如果沒有這個(gè)條件,將出現(xiàn)無限遞歸的情況,最后使程序非正常終止。在本例中,遞歸終止條件是1!=1。返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》327.7作用域與生存期——作用域作用域是指變量和對(duì)象等實(shí)體在程序中的有效范圍。只有位于實(shí)體的作用域中,才能允許訪問該實(shí)體。VB各種實(shí)體的作用域由小到大,主要可以劃分為3個(gè)層次,它們分別是局部作用域、模塊作用域和全局作用域。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》33局部作用域在過程內(nèi)部定義的變量稱為局部變量,又稱為過程變量。局部變量的作用域是定義它的過程,既可以是事件過程,也可以是通用過程。只有在本過程的內(nèi)部才能使用局部變量,在此過程之外是不能使用這些變量的。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》34舉例:PrivateSubCommand1_Click()'事件過程Command1_ClickDimaAsInteger'局部變量a…EndSubPrivateSubSub1()'子過程Sub1DimaAsInteger'局部變量a…EndSub2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》35說明:(1)在不同的過程中可以定義相同名字的變量。正所謂井水不犯河水,它們分別代表不同的局部變量,在內(nèi)存中占據(jù)不同的空間,互不干擾。(2)過程的形參也是局部變量,其他過程無法使用。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》36模塊作用域在模塊的所有過程之外即通用段,用Dim或者Private定義的變量稱為模塊變量。在窗體模塊中定義的模塊變量,又稱為窗體變量。模塊變量的作用域是定義它的模塊,可以被本模塊的所有過程共同使用。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》37舉例:DimaAsInteger'模塊變量aPrivateSubCommand1_Click()'事件過程Command1_Click…Printa'訪問模塊變量aEndSubPrivateSubSub1()'子過程Sub1DimbAsInteger'局部變量ba=a+1'訪問模塊變量a…EndSub2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》38模塊過程如果在模塊中定義過程時(shí),用Private加以聲明,則稱為模塊過程。在窗體模塊中定義的模塊過程,又稱為窗體過程。模塊過程的作用域是定義它的模塊,只能被本模塊的所有過程所調(diào)用,其它模塊的過程則無法調(diào)用。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》39全局作用域在標(biāo)準(zhǔn)模塊或者窗體模塊的所有過程之外即通用段,用Public定義的變量稱為全局變量。全局變量的作用域是定義它的程序,可以被整個(gè)工程的所有模塊共同使用。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》402024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》41說明:(1)在標(biāo)準(zhǔn)模塊中定義的全局變量,可以在程序的所有模塊中直接使用。如果在不同的標(biāo)準(zhǔn)模塊中定義了相同名字的全局變量,則使用時(shí)必須指出所在的標(biāo)準(zhǔn)模塊名。例如在標(biāo)準(zhǔn)模塊Module1和Module2中都定義了全局變量a,則使用時(shí)應(yīng)寫為Module1.a和Module2.a。(2)在窗體模塊中定義的全局變量,在程序的模塊中使用時(shí),必須指出所在的窗體名。例如在窗體模塊Form1中定義了全局變量a,則使用時(shí)應(yīng)寫為Form1.a。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》42全局過程如果在模塊中定義過程時(shí),用Public加以聲明,則稱為全局過程。全局過程的作用域是定義它的程序,可以被本程序所有模塊中的過程所調(diào)用。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》43變量屏蔽如果具有較大作用域的變量與具有較小作用域的變量同名,當(dāng)在較小作用域內(nèi)訪問該同名變量時(shí),訪問的是具有較小作用域的變量,這種現(xiàn)象稱為變量屏蔽。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》44舉例:DimaAsInteger'定義模塊變量a…PrivateSubCommand1_Click()DimaAsInteger'定義局部變量aa=2'訪問局部變量a…EndSub返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》457.7作用域與生存期——生存期生存期是指實(shí)體在程序運(yùn)行過程中的生命周期。如果實(shí)體的生命周期結(jié)束,則該實(shí)體將會(huì)消亡,并由系統(tǒng)自動(dòng)回收其所占據(jù)的內(nèi)存等資源。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》46動(dòng)態(tài)變量動(dòng)態(tài)變量是指在程序執(zhí)行的某一時(shí)期,被動(dòng)態(tài)地創(chuàng)建而又動(dòng)態(tài)地撤消的一種變量。動(dòng)態(tài)變量往往存在于一個(gè)程序的局部,創(chuàng)建和撤消都是由系統(tǒng)在程序執(zhí)行期間自動(dòng)完成的。PrivateSubCommand1_Click()DimiAsInteger'定義局部變量iFori=1To3CallSub1(i)NextiEndSubPrivateSubSub1(mAsInteger)'子過程定義Print"m=";mEndSub動(dòng)態(tài)變量舉例2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》47靜態(tài)變量靜態(tài)變量一般具有全局性質(zhì),存儲(chǔ)空間在程序的整個(gè)運(yùn)行期間是固定的。靜態(tài)變量在程序編譯時(shí)就為其分配存儲(chǔ)空間,即程序開始執(zhí)行時(shí)它已經(jīng)存在,程序執(zhí)行結(jié)束時(shí)才撤消其所占內(nèi)存空間。靜態(tài)變量語法形式:
static變量名As類型2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》48靜態(tài)變量舉例PrivateSubCommand1_Click()DimaAsInteger,iAsInteger'定義局部變量
Fori=1To3a=fun1(i)'函數(shù)調(diào)用
Print"a=";aNextiEndSubPrivateFunctionfun1(mAsInteger)'函數(shù)定義
StaticbAsInteger'定義靜態(tài)局部變量
b=b+mfun1=b'確定函數(shù)的返回值
EndFunction2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》49靜態(tài)過程如果在定義過程時(shí),用static關(guān)鍵字加以聲明,則稱為靜態(tài)過程。語法形式:
staticSub|Function過程名([形參列表])
過程體
EndSub|Function返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》507.8滾動(dòng)條滾動(dòng)條(ScrollBar)控件通常用來直觀地確定數(shù)據(jù)的位置,也可以作為模糊數(shù)據(jù)輸入的工具。滾動(dòng)條有水平滾動(dòng)條(HScrollBar)和垂直滾動(dòng)條(VScrollBar)兩種形式,除了方向之外,這兩種滾動(dòng)條的結(jié)構(gòu)和操作是完全相同的。在工具箱中表示為:2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》51滾動(dòng)條的常用屬性屬性作用Name設(shè)置滾動(dòng)條的對(duì)象名Max設(shè)置滾動(dòng)條所能表示的最大值Min設(shè)置滾動(dòng)條所能表示的最小值LargeChange單擊滾動(dòng)條的空白處時(shí),滑塊移動(dòng)的增量值SmallChage單擊滾動(dòng)條兩端的箭頭時(shí),滑塊移動(dòng)的增量值Value滑塊在滾動(dòng)條所處位置表示的值2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》52說明:(1)程序第一個(gè)水平滾動(dòng)條控件的默認(rèn)對(duì)象名是HScroll1,依次類推。如果是垂直滾動(dòng)條,則其第一個(gè)控件的默認(rèn)對(duì)象名是VScroll1。(2)Max和Min屬性值的取值范圍是-32768~32767。如果滑塊位于水平滾動(dòng)條的最左端,或者位于垂直滾動(dòng)條的最上端,Value的屬性值就為最小值(Min);如果滑塊位于水平滾動(dòng)條的最右端,或者位于垂直滾動(dòng)條的最下端,Value的屬性值就為最大值(Max)。(3)Value的屬性值顯然應(yīng)該在Max和Min的屬性值之間。如果在程序中設(shè)置Value的屬性值,則表示把滑塊移動(dòng)到滾動(dòng)條的相應(yīng)位置。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》53滾動(dòng)條的常用事件事件來源Change滾動(dòng)條的Value屬性值發(fā)生改變Scroll拖動(dòng)滾動(dòng)條的滑塊2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》54說明(1)當(dāng)用戶改動(dòng)了滑塊在滾動(dòng)條中的位置,就會(huì)自動(dòng)觸發(fā)Change事件??梢酝ㄟ^Change事件,得知滑塊在滾動(dòng)條中的當(dāng)前位置。(2)單擊滾動(dòng)條兩端的箭頭或者空白處時(shí),并不會(huì)觸發(fā)Scroll事件。可以通過Scroll事件,跟蹤滑塊在滾動(dòng)條中的動(dòng)態(tài)變化。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》55例7.17
用滾動(dòng)條設(shè)計(jì)調(diào)色板
在窗體中創(chuàng)建3個(gè)水平滾動(dòng)條,分別用于調(diào)整紅色、綠色和藍(lán)色3個(gè)顏色分量。創(chuàng)建6個(gè)標(biāo)簽控件,前3個(gè)標(biāo)簽作為滾動(dòng)條的標(biāo)題,后3個(gè)標(biāo)簽分別用于顯示3個(gè)顏色分量的當(dāng)前值。創(chuàng)建一個(gè)文本框控件,用于展示調(diào)整顏色之后的實(shí)際效果。2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》56PrivateSubHScroll1_Change()Text1.BackColor=RGB(HScroll1.Value,HScroll2.Value,HScroll3.Value)Label4.Caption=HScroll1.ValueEndSubPrivateSubHScroll2_Change()Text1.BackColor=RGB(HScroll1.Value,HScroll2.Value,HScroll3.Value)Label5.Caption=HScroll2.ValueEndSubPrivateSubHScroll3_Change()Text1.BackColor=RGB(HScroll1.Value,HScroll2.Value,HScroll3.Value)Label6.Caption=HScroll3.ValueEndSub返回2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》577.9直線和形狀直線(Line)控件用于在窗體上繪制直線。形狀(Shape)控件用于在窗體上繪制簡單的幾何圖形,它的初始狀態(tài)是一個(gè)矩形。在工具箱中表示為:2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》58直線的常用屬性屬性作用Name設(shè)置直線的對(duì)象名BorderColor設(shè)置直線的顏色BorderStyle設(shè)置直線的類型BorderWidth設(shè)置直線的寬度,默認(rèn)值是1X1設(shè)置直線起點(diǎn)的橫坐標(biāo)X2設(shè)置直線終點(diǎn)的橫坐標(biāo)Y1設(shè)置直線起點(diǎn)的縱坐標(biāo)Y2設(shè)置直線終點(diǎn)的縱坐標(biāo)2024/11/11《VisualBasic程序設(shè)計(jì)簡明教程》59
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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年度綠化工程節(jié)水灌溉系統(tǒng)安裝合同
- 2025年度房地產(chǎn)銷售合同范本之編號(hào)編制標(biāo)準(zhǔn)
- 2025年度建筑勞務(wù)分包合同范本(節(jié)能減排目標(biāo))
- 2025年度人工智能輔助診斷系統(tǒng)合同協(xié)議書履約擔(dān)保函正規(guī)范本
- 2025年度地下綜合管廊工程合同安全標(biāo)準(zhǔn)
- 2025年度教育行業(yè)投資合作合同
- 2025年度城市安全監(jiān)控系統(tǒng)工程簡易工程承包合同
- 2025年度建筑工地專用腳手架銷售及售后保障合同
- 2025年度智慧農(nóng)業(yè)解決方案合同附屬協(xié)議
- 2025年度新型城鎮(zhèn)化建設(shè)農(nóng)民工就業(yè)保障合同書
- 2024-2025學(xué)年人教版生物八年級(jí)上冊(cè)期末綜合測試卷
- GB/T 709-2019熱軋鋼板和鋼帶的尺寸、外形、重量及允許偏差
- GB/T 14177-2003林業(yè)機(jī)械便攜式割灌機(jī)和割草機(jī)試驗(yàn)方法
- FZ/T 54007-2019錦綸6彈力絲
- DB11-T 291-2022日光溫室建造規(guī)范
- 2021-2022學(xué)年山東省淄博市高二(下)期末英語試卷(附答案詳解)
- 北師大版高中數(shù)學(xué)選修4-6初等數(shù)論初步全套課件
- 外貿(mào)業(yè)務(wù)員面試試卷
- 紀(jì)檢知識(shí)答題測試題及答案
- 創(chuàng)傷急救-止血、包扎課件
- 大數(shù)據(jù)背景下網(wǎng)絡(luò)輿情成因及治理
評(píng)論
0/150
提交評(píng)論