第2章對象及其操作課件_第1頁
第2章對象及其操作課件_第2頁
第2章對象及其操作課件_第3頁
第2章對象及其操作課件_第4頁
第2章對象及其操作課件_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1.3對象及其操作本節(jié)的學(xué)習(xí)要點掌握面向?qū)ο蟪绦蛟O(shè)計的基本概念掌握窗體的三要素了解標準控件及其命名方法掌握控件的畫法和基本操作對象面向?qū)ο蠹夹g(shù)是基于對象概念的,一個面向?qū)ο蟮某绦虻拿恳粋€成分都是對象。程序是通過建立對象及對象之間的通信來執(zhí)行的。對象是一個數(shù)據(jù)和代碼的集合。如VB中窗體就是一個對象,窗體中任何控件也分別是一個對象。每個對象都有屬性、事件和方法。1.3.1

面向?qū)ο蟪绦蛟O(shè)計的基本概念小明窗體文本框按鈕對象的屬性對象都有自已的屬性。它們是用來描述和反映對象特征的參數(shù)。例如:窗體名稱(Name)、標題(Caption)、顏色(Color)、字體(FontName)等都是屬性。對象屬性設(shè)置的方法:方法一:在設(shè)計模式下,通過屬性窗口直接設(shè)置對象的屬性。方法二:在程序的代碼中通過賦值實現(xiàn),其格式為:對象.屬性=屬性值

Form1.Caption="顯示"1.3.1面向?qū)ο蟪绦蛟O(shè)計的基本概念

必須先選中對象,后設(shè)置屬性。在屬性窗口中列出的大多屬性值都可采用系統(tǒng)缺省值。

屬性設(shè)置的兩種方法適用于大部分屬性,但有些屬性只能用程序代碼或?qū)傩源翱谠O(shè)置。通常把只能通過屬性窗口設(shè)置的屬性稱為“只讀屬性”。對象的事件VB中,事件是預(yù)先定義好的能夠被對象所識別的動作,是導(dǎo)致執(zhí)行某過程的通知。如按下一個鍵、單擊一下鼠標、選擇一個菜單等都是一個事件。事件類型大致可以分為:鍵盤事件、鼠標事件和程序事件。鍵盤事件:用戶按下鍵盤上的按鈕后產(chǎn)生的事件。鼠標事件:用戶移動、單擊、雙擊和拖動鼠標時所產(chǎn)生的事件。程序事件:指VB程序在裝入、打開和關(guān)閉一個窗體時所產(chǎn)生的事件。事件過程:是指附在該對象上的程序代碼,是事件觸發(fā)后處理的程序。編寫事件過程的形式如下:

PrivateSub對象名_事件名()

語句序列

EndSub

1.3.1面向?qū)ο蟪绦蛟O(shè)計的基本概念例如:PrivateSubcmdOk_Click() cmdOk.FontSize=20'設(shè)置命令按鈕的字體大小為20EndSub對象的方法對象的方法是對象的行為方式,即對象要執(zhí)行的操作。方法是面向?qū)ο蟮?,所以對象的方法調(diào)用一般要指明對象。對象方法調(diào)用形式:

[對象名.]方法[參數(shù)列表

]

如省略對象,表示當(dāng)前對象,一般指窗體。1.3.1面向?qū)ο蟪绦蛟O(shè)計的基本概念

對象是一個數(shù)據(jù)和代碼的集合。其中數(shù)據(jù)就是對象的屬性,代碼就是對象的方法。

對象的三要素小明小蘭屬性姓名:小明年齡:20歲身高:1.6m姓名:小蘭年齡:19歲身高:1.7m事件小明喊小蘭,對小蘭來說,“喊”就是一個事件。方法小蘭向小明走來,“走”就是小蘭一個方法。窗體的結(jié)構(gòu)與Windows下的窗口十分類似,在程序運行前,即設(shè)計階段,稱為窗體;程序運行后也可以稱為窗口。

1.3.2窗體的結(jié)構(gòu)系統(tǒng)菜單窗體最小化按鈕最大化按鈕關(guān)閉按鈕標題欄[窗體名.]Caption=字符串窗體的屬性Name:設(shè)置窗體的名稱。所有對象都具有該屬性;在同一范圍內(nèi)不允許該屬性值相同;該屬性只能通過屬性窗口設(shè)置,在代碼窗口中不能改變。Caption:設(shè)置窗體標題欄上顯示的內(nèi)容。在代碼窗口修改該屬性值的語法格式為:注意Caption屬性與Name屬性的區(qū)別!1.3.2窗體的三要素NameCaptionCommand1.Caption="確定"對象名.屬性名=屬性值Sub對象名_事件名()對象名.方法[(參數(shù))]窗體的屬性BackColor、ForeColor:返回或設(shè)置窗體的背景顏色和前景顏色。屬性值是一個16進制的常數(shù);通常在編寫代碼時,常用Qbcolor或RGB函數(shù)為其設(shè)置顏色。1.3.2窗體的三要素Form1.BackColor=&HFF0000

'低字節(jié)到高字節(jié)依次表示紅、綠和藍的值Form1.BackColor=RGB(255,0,0)Form1.ForeColor=vbRedRGB顏色函數(shù)講解

藍紅綠256等份256等份256等份Form1.BackColor=RGB(255,13,222)窗體的屬性BorderStyle:設(shè)置窗體的邊框樣式。語法格式:1.3.2窗體的三要素窗體名.BorderStyle={0|1|2|3|4|5}屬性值說明0-None窗體無邊框1-FixedSingle含控制菜單、標題欄、最大、最小化按鈕的固定單邊框2-Sizable默認值,可調(diào)整的雙線邊框。3-FixedDouble含控制菜單、標題欄,無最大、最小化按鈕、窗體大小固定的雙線邊框。4-FixedToolWindow只有關(guān)閉按鈕、縮小的字體顯示標題欄、窗體大小固定的工具窗口。5-SizableToolWindow只有關(guān)閉按鈕,并用縮小的字體顯示標題欄、窗體大小可變的工具窗口。注意:該屬性只能在屬性窗口中設(shè)置窗體的屬性Enabled:設(shè)置窗體是否被響應(yīng)。語法格式:當(dāng)該屬性值為True(默認值)時表示窗體有效,能響應(yīng)用戶或系統(tǒng)事件;為False時表示窗體無效,不能響應(yīng),并且窗體上的所以控件都無效。1.3.2窗體的三要素[窗體名.]Enabled={True|False}窗體的屬性Font系列字體屬性:設(shè)置窗體上文本的字體、字號、字形等樣式。1.3.2窗體的三要素屬性類型功能FontName字符型決定對象上正文的字體(缺省為宋體)FontSize整型決定對象上正文的字體大小FontBold邏輯型決定對象上正文是否是粗體FontItalic邏輯型決定對象上正文是否是斜體FontUnderline邏輯型決定對象上正文是否帶下劃線FontStrikeThru邏輯型決定對象上正文是否加一刪除線窗體的事件不同的對象對應(yīng)不同事件的發(fā)生,VB中窗體有很多事件。在一個窗體的代碼窗口中列出了所有窗體事件。1.3.2窗體的三要素在此選中對象列出選中對象事件窗體的事件Activate:當(dāng)窗體變?yōu)榧せ畹漠?dāng)前窗口時,引發(fā)本事件。Click:當(dāng)用戶單擊窗體時觸發(fā)本事件。

DblClick:當(dāng)用戶雙擊窗體時觸發(fā)本事件。Deactivate:當(dāng)窗體失去激活狀態(tài),即另一個窗體成為當(dāng)前窗口時,引發(fā)本事件。Load:當(dāng)窗體被加載到內(nèi)存時觸發(fā)本事件。Load事件往往用于在啟動程序時對屬性和變量進行初始化。Unload:當(dāng)關(guān)閉窗體時,觸發(fā)卸載事件,將窗體從內(nèi)存中卸載。注意:Load事件發(fā)生時窗體是不活動的,而Activate事件發(fā)生時窗體是活動的,Print方法不能在不活動窗體上使用,因此Print不能用于Load事件中。1.3.2窗體的三要素

“雙擊”實際上觸發(fā)兩個事件,第一次按鼠標按鈕時產(chǎn)生Click單擊事件,第二次按鼠標按鈕時產(chǎn)生DblClick事件。

PrivateSubForm_Click()

Form1.BackColor=vbRedEndSubPrivateSubForm_Click()

Form1.BackColor=vbRedEndSub當(dāng)觸發(fā)了Form對象的Click事件時,該事件過程Form_Click就會被執(zhí)行。窗體名稱為Form1,為何在其事件過程中用Form。

?

Print在Load和Activate事件中的區(qū)別。PrivateSubForm_Load()Print"***"EndSubPrivateSubForm_Activate()Print"***"EndSub例1例2:程序運行時,用戶在窗體上輸入字符時,窗體上顯示輸入結(jié)果。窗體事件示例分析:添加什么事件過程在窗體上顯示輸入結(jié)果用什么代碼當(dāng)用戶輸入a時觸發(fā)了Form_KeyPress事件過程,該過程的參數(shù)KeyAscii值是多少?通過什么方法在窗體上顯示出a?代碼:Form_KeyPress97PrivateSubForm_KeyPress(KeyAsciiAsInteger)PrintChr(KeyAscii)EndSubForm1.printchr(x)函數(shù):將ASCII碼轉(zhuǎn)換為對應(yīng)的字符;窗體的方法在代碼窗口中,輸入“form1.”后,會顯示該窗體對象的所有屬性和方法。1.3.2窗體的三要素對象的屬性和方法屬性方法窗體的方法Show和Hide:分別用于顯示和隱藏窗體。調(diào)用格式:

[窗體名.]Show[Style][窗體名.]Hide窗體名缺省,表示顯示或隱藏當(dāng)前窗體;Show方法的Style參數(shù)取值:vbModel(模式):不允許用戶同時與其他窗體交互。vbModeless(無模式):允許用戶同時與其他窗體交互。1.3.2窗體的三要素窗體的方法Print:用于將文本輸出到窗體的一行上。調(diào)用格式:

[對象名.]Print[輸出項列表][{;|,}]對象除了窗體外,還可以是圖片框(PictureBox)、Debug或打印機(Printer),若缺省對象名,表示將文本輸出到當(dāng)前窗體上。輸出項列表:是由0個、1個或多個待輸出的數(shù)值表達式或字符串表達式構(gòu)成;當(dāng)輸出項是由多個項構(gòu)成,則中間必須用逗號或分號分隔;若Print后什么都不跟,則表示輸出一個空行。1.3.2窗體的三要素如下代碼:

PrivateSubForm_Click()Print1,-2PrintPrint"We","study"EndSub標準格式窗體的方法Print:用于將文本輸出到窗體的一行上。調(diào)用格式:

[對象名.]Print[輸出項列表][{;|,}]對象除了窗體外,還可以是圖片框(PictureBox)、Debug或打印機(Printer),若缺省對象名,表示將文本輸出到當(dāng)前窗體上。輸出項列表:是由0個、1個或多個待輸出的數(shù)值表達式或字符串表達式構(gòu)成;當(dāng)輸出項是由多個項構(gòu)成,則中間必須用逗號或分號分隔;若Print后什么都不跟,則表示輸出一個空行。1.3.2窗體的三要素如下代碼:

PrivateSubForm_Click()Print1;-2PrintPrint"We";"study"EndSub緊縮格式注意:標準格式即參數(shù)以“,”分割,下一個輸出項將與上一個輸出項間隔14列;緊縮格式即參數(shù)以“;”分割,下一個輸出項將以緊湊格式,緊跟著上一個輸出項輸出。Print方法輸出的位置是由窗體的繪圖坐標CurrentX和CurrentY屬性決定的,默認為對象的左上角(0,0)。該方法可以結(jié)合定位輸出函數(shù)一起使用:Spc(n):在下一個輸出項前插入n個空格;Tab(n):輸出定位在絕對n列號上。代碼:1197513111591317PrivateSubForm_Click()EndSub

PrintTab(11);"A"

PrintTab(9);"B";Spc(3);"B"

PrintTab(7);"C";Spc(3);"C";Spc(3);"C"

PrintTab(5);"D";Spc(3);"D";Spc(3);"D";Spc(3);"D"10864333333窗體的方法Cls方法:用于清除運行時窗體上或圖形上的用Print方法生成的文本和圖形。語法格式:

[對象名].Cls對象名可以是窗體或圖片框。當(dāng)對象名缺省時,表示清除當(dāng)前窗體上的內(nèi)容。

例如:Form1.ClsClsPicture1.Cls1.3.2窗體的三要素窗體的方法Move(移動)方法:用于移動對象,并且可以在移動時變化對象的大小。語法格式:

[對象名.]MoveLeft[,Top[,Width[,Height]]]

其中,對象名可以是窗體和除時鐘、菜單以外的所有控件。窗體名缺省(即未選對象名)時,默認為當(dāng)前窗體。Move方法中的Left、Top、Width、Height4個參數(shù),單位為Twip(特維)。1.3.2窗體的三要素注意!P9

例3:編寫一個程序,實現(xiàn)功能:每單擊窗體一次,窗體向右移動。1.3.2窗體的三要素思路:窗體向右移動是一個動作,應(yīng)該執(zhí)行什么方法;該動作是被什么對象的什么事件觸發(fā)的?代碼:

PrivateSubForm_Click()

Form1.MoveLeft+1500EndSubmove窗體clickForm1.MoveLeft+1500,top,Width+1500?每次移動并變大如何實現(xiàn)編程實現(xiàn):單擊和雙擊窗體時分別改變標簽和窗體標題欄的文字,單擊單選按鈕改變標簽文字。界面設(shè)計例4:窗體的簡單應(yīng)用對象屬性屬性值FormNameForm1Caption學(xué)習(xí)之道LabelNameLabel1Caption空白BackColor&H00FFC0C0&OptionButtonNameOption1Caption上課OptionButtonNameOption2Caption復(fù)習(xí)屬性設(shè)置編寫代碼PrivateSubForm_Click()‘窗體的單擊事件過程

Label1.Caption="成功通過考試!"EndSubPrivateSubForm_DblClick()‘窗體的雙擊事件過程

Form1.Caption="歡迎你學(xué)習(xí)VB!!"EndSubPrivateSubOption1_Click()‘單選按鈕的單擊事件過程

Label1.Caption="聽明白勤思考記下來!"EndSubPrivateSubOption2_Click()'單選按鈕的單擊事件過程

Label1.Caption="多上機善提問多總結(jié)!"EndSub1.3.3VB可視化設(shè)計基本步驟創(chuàng)建VB應(yīng)用程序有四個主要步驟:創(chuàng)建一個工程界面設(shè)計設(shè)置屬性編寫代碼調(diào)試運行

保存并退出一個簡單程序功能:當(dāng)單擊“顯示”按鈕時,文本框中出現(xiàn)“揚州職業(yè)大學(xué)”;單擊“清除”按鈕時,文本框內(nèi)的文字消失;單擊“退出”按鈕,對話框關(guān)閉。1.3.3VB可視化設(shè)計基本步驟創(chuàng)建一個工程單擊“開始”----“程序”----“VB6.0”就可以啟動VB6.0程序。在出現(xiàn)的“新建工程”對話框中選擇“標準EXE”,點“打開”按鈕。新創(chuàng)建的工程包含兩個主要的文件,一個是工程文件(.vbp),一個是窗體文件(.frm)。雙擊工程文件就可以打開該工程。1.3.3VB可視化設(shè)計基本步驟第一步:界面設(shè)計在這個程序中需要4個控件對象:分別是一個文本框控件和三個按鈕控件。單擊工具箱中的文本框控件按鈕,當(dāng)光標變成十字形后可以在窗體合適的位置拖動鼠標,畫出一個矩形區(qū)域,表示當(dāng)前控件的大小。松開鼠標后,剛剛出現(xiàn)的矩形區(qū)域就出現(xiàn)了一個文本框,文本框中默認出現(xiàn)文字Text1;或者雙擊文本框控件按鈕也同樣可以添加一個文本框控件,當(dāng)選中某個控件對象時,會出現(xiàn)8個句柄,可以直接利用鼠標的拖動來調(diào)整控件大小,用同樣的方法選擇工具箱中的按鈕控件按鈕。在窗體上添加三個按鈕。1.3.3VB可視化設(shè)計基本步驟1.3.3VB可視化設(shè)計基本步驟第二步:設(shè)置屬性控件屬性屬性值FormNameForm1Caption歡迎進入VisualBasic的世界!TextBoxNameText1Text空白CommandButtonNameCommand1Caption顯示CommandButtonNameCommand2Caption清除CommandButtonNameCommand3Caption退出第三步:編寫代碼PrivateSubCommand1_Click()’按鈕Command1的Click事件過程Text1.Text=“揚州職業(yè)大學(xué)”EndSubPrivateSubCommand2_Click()'按鈕Command2的Click事件過程Text1.Text=""EndSubPrivateSubCommand3_Click()'按鈕Command3的Click事件過程EndEndSub

1.3.3VB可視化設(shè)計基本步驟雙擊按鈕進入“代碼”窗口選擇對象選擇事件第四步:調(diào)試運行當(dāng)程序代碼編寫好了就可以調(diào)試了。點“啟動”按鈕或按F5按鈕調(diào)試程序、排除錯誤直至正確運行。1.3.3V

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論