c語(yǔ)言程序設(shè)計(jì)第7章_第1頁(yè)
c語(yǔ)言程序設(shè)計(jì)第7章_第2頁(yè)
c語(yǔ)言程序設(shè)計(jì)第7章_第3頁(yè)
c語(yǔ)言程序設(shè)計(jì)第7章_第4頁(yè)
c語(yǔ)言程序設(shè)計(jì)第7章_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

會(huì)計(jì)學(xué)1c語(yǔ)言程序設(shè)計(jì)第7章7.1屬性、事件和方法的概念7.1.1屬性(Property)對(duì)象中的數(shù)據(jù)、所有對(duì)象都有自己的屬性。屬性是用來(lái)描述和反映對(duì)象特征的參數(shù)。例如:控件名稱(Name)、標(biāo)題(Caption)、顏色(Color)、字體(FontName)等屬性決定了對(duì)象展現(xiàn)給用戶的界面具有什么樣的外觀及功能。第1頁(yè)/共34頁(yè)7.1.2事件(Event)所謂事件,是由VisualBasic預(yù)先設(shè)置好的、能夠被對(duì)象識(shí)別的動(dòng)作,例如Click(單擊)、DblClick(雙擊)、Load(裝入)、KeyDown(鍵盤(pán)鍵按下)、MouseMove(移動(dòng)鼠標(biāo))等。7.1屬性、事件和方法的概念第2頁(yè)/共34頁(yè)7.1.3方法(Method)方法對(duì)我們來(lái)說(shuō)也并不陌生,在前面的許多例子中接觸過(guò)。所謂“方法”實(shí)際上是VB提供的一種特殊的子程序,用來(lái)完成一定的操作。例如VB提供了一個(gè)名為Print的方法,它是用來(lái)輸出信息的專用過(guò)程。調(diào)用“方法”的形式與調(diào)用一般的過(guò)程或函數(shù)不同,應(yīng)該指明是哪個(gè)對(duì)象調(diào)用的。其調(diào)用格式如下:對(duì)象名稱.方法名稱例如:Form1.print"VB程序設(shè)計(jì)"7.1屬性、事件和方法的概念第3頁(yè)/共34頁(yè)7.1.4屬性、方法和事件之間的關(guān)系

VisualBasic的窗體和控件是具有自己的屬性、方法和事件的對(duì)象??梢园褜傩钥醋饕粋€(gè)對(duì)象的性質(zhì),把方法看作對(duì)象的動(dòng)作,把事件看作對(duì)象的響應(yīng)。日常生活中的對(duì)象,如運(yùn)動(dòng)員手中的籃球同樣具有屬性、方法和事件。

如果對(duì)籃球編程,其VisualBasic代碼如下所示,其作用是設(shè)置籃球的屬性。Basketball.Color=GreenBasketball.Radius=15Basketball.Inflated=True7.1屬性、事件和方法的概念第4頁(yè)/共34頁(yè)調(diào)用籃球的方法是這樣的:Basketball.InflatedBasketball.ColorBasketball.Radius籃球?qū)σ粋€(gè)事件的響應(yīng)如下所示:SubBasketball_Puncture() Basketball.Deflate Basketball.MakeNoise"Bang" Basketball.Inflated=False Basketball.Radius=1EndSub7.1屬性、事件和方法的概念第5頁(yè)/共34頁(yè)屬

性名

稱說(shuō)

明Apearance外形這個(gè)屬性用來(lái)決定控件是否采用三維效果BackColor窗體背景色可以從屬性框里彈出調(diào)色板,選擇所需要的顏色BorderStyle邊框風(fēng)格這個(gè)屬性決定了窗體邊框的樣式,共有6種屬性值;改變窗體的BordrStyle屬性后,窗體在屏幕上沒(méi)有變化,它只在運(yùn)行時(shí)才變?yōu)樗蟮臉幼覥aption窗體標(biāo)題出現(xiàn)在窗體標(biāo)題欄中的文本內(nèi)容ControlBox控件按鈕用來(lái)決定是否采用控件框的屬性,僅在程序運(yùn)行時(shí)才有效Enabled活動(dòng)性默認(rèn)值為T(mén)rue,決定窗體能否被訪問(wèn)7.2窗體的常用屬性第6頁(yè)/共34頁(yè)屬

性名

稱說(shuō)

明ForeColor窗體前景色窗體上打印文字的顏色Font字體用來(lái)改變?cè)摯绑w上顯示信息的字體、字型和字號(hào),它控制著直接在窗體上打印的文本顯示Name窗體名稱系統(tǒng)識(shí)別窗體的標(biāo)識(shí)名,一個(gè)窗體名必須以一個(gè)字母開(kāi)頭,可包含數(shù)字和下劃線,但不能包含空格和標(biāo)點(diǎn)符號(hào)Icon窗體圖標(biāo)這個(gè)屬性是用戶經(jīng)常要使用的一種屬性;當(dāng)用戶的應(yīng)用程序在工具條上最小化或在Windows桌面上變?yōu)橐粋€(gè)獨(dú)立應(yīng)用程序時(shí),該屬性決定將采用何種圖標(biāo),窗體控制框里的圖標(biāo)也由它決定7.2窗體的常用屬性第7頁(yè)/共34頁(yè)屬

性名

稱說(shuō)

明Left、Top、Height、Width左邊距、頂邊距、高度、寬度決定窗體在屏幕上的位置及窗體大小Visible可見(jiàn)性該屬性決定窗體是否可見(jiàn),默認(rèn)情況下是可見(jiàn)的;錯(cuò)誤地改變其值是很危險(xiǎn)的,窗體會(huì)從眼前消失WindowState窗體狀態(tài)指定窗體在運(yùn)行時(shí)的三種狀態(tài):正常、最小化、最大化7.2窗體的常用屬性第8頁(yè)/共34頁(yè)1.Hide方法作用:用以隱藏MDIForm或Form對(duì)象,一般應(yīng)用于多窗體中。格式:[對(duì)象.]Hide說(shuō)明:(1)Hide方法的語(yǔ)法中“對(duì)象”是可選的。它可以是一個(gè)對(duì)象表達(dá)式,其值為“應(yīng)用于”列表中的一個(gè)對(duì)象。如果省略“對(duì)象”,則帶有焦點(diǎn)的窗體缺省為“對(duì)象”。7.3窗體的常用方法第9頁(yè)/共34頁(yè)(2)隱藏窗體時(shí),它就從屏幕上被刪除,并將其Visible屬性設(shè)置為False。用戶將無(wú)法訪問(wèn)隱藏窗體上的控件,但是對(duì)于運(yùn)行中的VisualBasic應(yīng)用程序,或?qū)τ谕ㄟ^(guò)DDE與該應(yīng)用程序通訊的進(jìn)程及對(duì)于Timer控件的事件,隱藏窗體的控件仍然是可用的。(3)窗體被隱藏時(shí),用戶只有等到被隱藏窗體的事件過(guò)程的全部代碼執(zhí)行完后才能夠與該應(yīng)用程序交互。(4)如果調(diào)用Hide方法時(shí)窗體還沒(méi)有加載,那么Hide方法將加載該窗體但不顯示它。7.3窗體的常用方法第10頁(yè)/共34頁(yè)2.Show方法作用:用以顯示MDIForm或Form對(duì)象。格式:[對(duì)象.]Show說(shuō)明:(1)Show方法的語(yǔ)法中“對(duì)象”是可選的。它可以是一個(gè)對(duì)象表達(dá)式,其值為“應(yīng)用于”列表中的一個(gè)對(duì)象。如果省略“對(duì)象”,則帶有焦點(diǎn)的窗體缺省為“對(duì)象”。(2)如果調(diào)用Show方法時(shí)指定的窗體沒(méi)有裝載,VisualBasic將自動(dòng)裝載該窗體。(3)應(yīng)用程序的啟動(dòng)窗體在其Load事件調(diào)用后會(huì)自動(dòng)出現(xiàn)。7.3窗體的常用方法第11頁(yè)/共34頁(yè)3.Move方法作用:用以移動(dòng)MDIForm、Form或控件,并可以改變其大小。格式:[對(duì)象.]Moveleft[,top[,width[,height]]]說(shuō)明:(1)其中Move方法的語(yǔ)法中“對(duì)象”是可選的??梢允且粋€(gè)對(duì)象表達(dá)式,其值為“應(yīng)用于”列表中的一個(gè)對(duì)象。如果省略“對(duì)象”,則帶有焦點(diǎn)的窗體缺省為“對(duì)象”。7.3窗體的常用方法第12頁(yè)/共34頁(yè)(2)參數(shù)left是必須的,指示對(duì)象左邊的水平坐標(biāo)(x軸);參數(shù)top是可選的,指示“對(duì)象”頂邊的垂直坐標(biāo)(y軸);參數(shù)Width也是可選的,指示“對(duì)象”新的寬度;參數(shù)height同樣是可選的,指示“對(duì)象”新的高度。(3)left、top、width和height都為單精度值。(4)只有l(wèi)eft參數(shù)是必須的。但是,要指定任何其他的參數(shù),必須先指定出現(xiàn)在語(yǔ)法中該參數(shù)前面的全部參數(shù)。例如,如果不先指定left和top參數(shù),則無(wú)法指定width參數(shù)。任何沒(méi)有指定的尾部參數(shù)則保持不變。7.3窗體的常用方法第13頁(yè)/共34頁(yè)【例7-1】在窗體上分別用4個(gè)命令按鈕上、下、左、右移動(dòng)一個(gè)標(biāo)簽。7.3窗體的常用方法第14頁(yè)/共34頁(yè)P(yáng)rivateSubCommand1_Click() Label1.MoveLabel1.Left,Label1.Top-10

'上移EndSubPrivateSubCommand2_Click() Label1.MoveLabel1.Left,Label1.Top+10

'下移EndSubPrivateSubCommand3_Click() Label1.MoveLabel1.Left-10'左移EndSubPrivateSubCommand4_Click() Label1.MoveLabel1.Left+10'右移EndSub7.3窗體的常用方法第15頁(yè)/共34頁(yè)4.Print方法作用:在指定對(duì)象上顯示文本。格式:[對(duì)象.]Print[{Spc(n)|Tab(n)}][表達(dá)式列表][;|,]說(shuō)明:(1)對(duì)象:可以是窗體、圖形框或打印機(jī),缺省對(duì)象在窗體上輸出。(2)Spc(n)函數(shù):在當(dāng)前位置插入n個(gè)空格,允許重復(fù)使用。(3)Tab(n)函數(shù):從左往右將插入點(diǎn)定位在絕對(duì)列號(hào)n上,允許重復(fù)使用。7.3窗體的常用方法第16頁(yè)/共34頁(yè)(4)表達(dá)式列表:要輸出的數(shù)值或字符串表達(dá)式,若省略,則輸出一個(gè)空行,多個(gè)表達(dá)式之間用逗號(hào)、分號(hào)分隔,也可出現(xiàn)Spc和Tab函數(shù)。開(kāi)始打印的位置是由對(duì)象的CurrentX和CurrentY屬性決定,缺省為打印對(duì)象的左上角(0,0)。(5);(分號(hào)):光標(biāo)定位在上一個(gè)顯示的字符后。(6),(逗號(hào)):光標(biāo)定位在下一個(gè)打印區(qū)的開(kāi)始位置處,打印區(qū)每隔14列開(kāi)始。(7)無(wú)“;”或“,”時(shí)表示輸出后換行。7.3窗體的常用方法第17頁(yè)/共34頁(yè)5.Cls方法作用:清除運(yùn)行時(shí)Form或PictureBox所生成的圖形和文本。格式:對(duì)象.Cls說(shuō)明:(1)Cls將清除圖形和打印語(yǔ)句在運(yùn)行時(shí)所產(chǎn)生的文本和圖形,而設(shè)計(jì)時(shí)在Form中使用Picture屬性設(shè)置的背景位圖和放置的控件不受Cls影響。(2)調(diào)用Cls之后,對(duì)象的CurrentX和CurrentY屬性復(fù)位為0。7.3窗體的常用方法第18頁(yè)/共34頁(yè)6.Refresh方法作用:強(qiáng)制全部重繪一個(gè)窗體或控件。格式:對(duì)象.Refresh說(shuō)明:(1)在下列情況下使用Refresh方法:在另一個(gè)窗體被加載時(shí)顯示一個(gè)窗體的全部;(2)Refresh方法不能用于MDI窗體,但能用于MDI子窗體。(3)通常,如果沒(méi)有事件發(fā)生,窗體或控件的繪制是自動(dòng)處理的。但是,有些情況下希望窗體或控件立即更新。7.3窗體的常用方法第19頁(yè)/共34頁(yè)7.4.1鼠標(biāo)事件7.4事件事件名稱發(fā)生條件Click單擊鼠標(biāo)左鍵的時(shí)候發(fā)生DblClick雙擊鼠標(biāo)左鍵的時(shí)候發(fā)生MouseMove鼠標(biāo)移動(dòng)的時(shí)候連續(xù)發(fā)生MouseDown鼠標(biāo)左鍵或者右鍵按下的時(shí)候發(fā)生MouseUP鼠標(biāo)左鍵或者右鍵被釋放的時(shí)候發(fā)生

第20頁(yè)/共34頁(yè)1.MouseDown事件用戶按下鼠標(biāo)的時(shí)候所觸發(fā)的事件稱為MouseDown事件。語(yǔ)法如下:說(shuō)明:PrivateSubObject_MouseDown([IndexAsInteger]ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)(1)Object是控件對(duì)象的名稱。(2)Index是一個(gè)整數(shù),用來(lái)唯一標(biāo)識(shí)一個(gè)在控件數(shù)組中的控件。(3)Button是一個(gè)整數(shù),取值為1、2和4,用來(lái)標(biāo)識(shí)觸發(fā)該事件的是哪一個(gè)鼠標(biāo)鍵。7.4事件第21頁(yè)/共34頁(yè)(4)Shift是一個(gè)整數(shù),取值為1~7。在Button參數(shù)中指定的按鍵被按下的情況下,指示Shift、Alt和Ctrl鍵的狀態(tài)。(5)X和Y是用來(lái)標(biāo)識(shí)鼠標(biāo)指針當(dāng)前位置的。7.4事件取

值含

義取

值含

義03個(gè)鍵都向上1Shift鍵按下2Ctrl鍵按下3Shift和Ctrl鍵按下4Alt鍵按下5Shift鍵和Alt鍵按下6Ctrl鍵和Alt鍵按下73個(gè)鍵都按下第22頁(yè)/共34頁(yè)2.MouseUp事件釋放鼠標(biāo)按鈕時(shí)觸發(fā)的事件稱為MouseUp事件。語(yǔ)法如下:PrivateSubObject_MouseUp([IndexAsInteger]ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)MouseUp事件函數(shù)使用方法同MouseDown事件。7.4事件第23頁(yè)/共34頁(yè)3.MouseMove事件移動(dòng)鼠標(biāo)時(shí)觸發(fā)的事件稱為MouseMove事件。語(yǔ)法如下:PrivateSubForm_MouseMove([IndexAsInteger]ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)其中參數(shù)的含義同上。7.4事件第24頁(yè)/共34頁(yè)【例7-2】下面通過(guò)一個(gè)簡(jiǎn)單的程序觀察窗體對(duì)單擊、雙擊鼠標(biāo)的響應(yīng)情況。7.4事件查看代碼第25頁(yè)/共34頁(yè)【例7-3】設(shè)計(jì)一個(gè)窗體,用戶可以在窗體上實(shí)現(xiàn)繪制圖形。7.4事件查看代碼第26頁(yè)/共34頁(yè)7.4.2鍵盤(pán)事件VB中還有一類很重要的事件是鍵盤(pán)事件,能觸發(fā)鍵盤(pán)事件的控件主要有復(fù)選框(CheckBox)控件、命令按鈕(CommandButton)控件、文本框(TextBox)控件以及窗體對(duì)象等。7.4事件事件名稱發(fā)生條件KeyDown當(dāng)鍵盤(pán)上某鍵被按下去時(shí)發(fā)生KeyUp鍵盤(pán)上的鍵彈起來(lái)時(shí)發(fā)生KeyPress此事件發(fā)生在鍵盤(pán)被按下后和字符被顯示出來(lái)之前發(fā)生第27頁(yè)/共34頁(yè)【例7-4】使用鍵盤(pán)的KeyDown事件和KeyUp事件示例。演示一個(gè)響應(yīng)F1以及與Alt和Ctrl相聯(lián)的組合鍵的鍵盤(pán)處理程序。該窗體上只有一個(gè)文本框控件。7.4事件查看代碼第28頁(yè)/共34頁(yè)7.5.1多窗體概述1.添加窗體的方法(1)從工具欄上單擊“添加窗體”的下拉箭頭,即可彈出一個(gè)列表,從中選取“添加窗體”選項(xiàng)。(2)從“工程”菜單上選取“添加窗體”命令選項(xiàng),即可為工程添加一個(gè)新的窗體。這個(gè)新窗體的默認(rèn)名稱和標(biāo)題均由工程已有

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論