資源描述:
《(面向?qū)ο蟪绦?4類與對(duì)象匯總ppt課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、4類和對(duì)象(1)第4課類與對(duì)象本課主要介紹面向?qū)ο缶幊痰幕A(chǔ)知識(shí),主要介紹:定義類聲明方法使用構(gòu)造函數(shù)在本課,我們先通過(guò)兩個(gè)趣味小程序來(lái)讓同學(xué)了解面向?qū)ο缶幊痰膬蓚€(gè)重要特性(對(duì)象與事件),然后再介紹如何去定義類和對(duì)象。24.1趣味示例在介紹新課之前,先介紹2個(gè)趣味示例移動(dòng)字幕會(huì)跑的按鈕目的:定時(shí)器Timer控件的使用了解對(duì)象的使用目的:事件編程了解對(duì)象的使用隨機(jī)數(shù)34.4.1移動(dòng)的字幕通過(guò)本示例,說(shuō)明:定時(shí)器控件(Timer)的使用Point對(duì)象的使用示例代碼位于“CSharp示例第4課MovingString”44.1.1.1界面設(shè)計(jì)標(biāo)簽lblTitle,恰當(dāng)設(shè)置
2、Text、Font、BackColor、ForoColor、AutoSize等屬性。按鈕btnPlayStop,恰當(dāng)設(shè)置Title、Anchor等屬性。定時(shí)器控件Timer,主要屬性:是否允許計(jì)時(shí),允許計(jì)時(shí)時(shí),計(jì)時(shí)時(shí)間到,引發(fā)Tick事件計(jì)時(shí)單位(毫秒)54.1.1.2按鈕變身點(diǎn)擊Play,開(kāi)始出現(xiàn)動(dòng)畫,按鈕變?yōu)镾top點(diǎn)擊Stop,動(dòng)畫停止,按鈕變?yōu)镻lay64.1.1.2按鈕變身privatevoidbtnPLayStop_Click(objectsender,EventArgse){//點(diǎn)擊Play時(shí),允許計(jì)時(shí),按鈕變?yōu)镾topif(btnPLayStop.Tex
3、t=="Play"){btnPLayStop.Text="Stop";timer1.Enabled=true;}//點(diǎn)擊Stop時(shí),停止計(jì)劃,按鈕變?yōu)镻layelse{btnPLayStop.Text="Play";timer1.Enabled=false;}}74.1.1.3標(biāo)簽的移動(dòng)標(biāo)簽的位置(Location屬性)這樣移動(dòng)可以嗎?lblTitle.Location.X--;Location屬性是什么類型的?lblTitle.Location.X--;由此可知,Location屬性是Point類的對(duì)象。對(duì)象有對(duì)象的用法。8如何使用對(duì)象?要使標(biāo)簽定位到一個(gè)新的點(diǎn)(Po
4、int),首先必要生成一個(gè)Point類的對(duì)象。如何定義對(duì)象?與定義變量類似,如定義一個(gè)Point類的對(duì)象newPointPointnewPoint;如何給對(duì)象賦初值?C#語(yǔ)言稱為對(duì)象的實(shí)例化,需要用new運(yùn)算符。PointnewPoint=newPoint(10,10);接下來(lái)使用下列語(yǔ)句就可以將標(biāo)簽定位到指定點(diǎn)了:lblTitle.Location=newPoint;嚴(yán)格來(lái)說(shuō),Point類型是結(jié)構(gòu)(struct)類型,不屬于類(class)類型。9移動(dòng)標(biāo)簽什么時(shí)候移動(dòng)?定時(shí)器控件計(jì)時(shí)時(shí)間到的時(shí)候,標(biāo)簽往左移動(dòng)一格代碼寫在Timer1控件的Tick事件里。怎樣移動(dòng)?標(biāo)簽
5、的x坐標(biāo)減1如果移出屏幕最左邊標(biāo)簽的x坐標(biāo)設(shè)為窗體的最右邊10移動(dòng)標(biāo)簽privatevoidtimer1_Tick(objectsender,EventArgse){//取標(biāo)題標(biāo)簽的x坐標(biāo)和y坐標(biāo)intx=lblTitle.Location.X-1;inty=lblTitle.Location.Y;//如果移出左邊界,則從右邊出現(xiàn)if(x<(0-lblTitle.Width)){x=this.Width;}//標(biāo)題的坐標(biāo)往前移一格PointnewPoint=newPoint(x,y);lblTitle.Location=newPoint;};114.1.2、會(huì)跑的按鈕通
6、過(guò)本示例,說(shuō)明:編寫鼠標(biāo)事件隨機(jī)數(shù)的使用Point類的使用示例代碼位于“CSharp示例第4課DoYouLoveMe”124.1.2.1界面設(shè)計(jì)窗體Form1恰當(dāng)設(shè)置其Text、BackGroundImage、BackGroundImageLayout等屬性,圖片自選按鈕btnYes,BtnNo恰當(dāng)設(shè)置其Text、Anchor屬性134.1.2.2按鈕跑起來(lái)按鈕什么時(shí)候跑?鼠標(biāo)剛進(jìn)入Yes按鈕的區(qū)域時(shí)。btnYes按鈕的Mouse_Enter事件按鈕怎么跑?產(chǎn)生兩個(gè)隨機(jī)數(shù)x和y,這兩個(gè)數(shù)要在窗體區(qū)間范圍內(nèi)令btnYes按鈕定位到新點(diǎn)(x,y)使用對(duì)象瀏覽器,了解Ra
7、ndom類的使用此處雙擊144.1.2.2按鈕跑起來(lái)privatevoidbtnYes_MouseEnter(objectsender,EventArgse){Randomr=newRandom();intx=r.Next(0,this.ClientRectangle.Width);inty=r.Next(0,this.ClientRectangle.Height);btnYes.Location=newPoint(x,y);}154.2面向?qū)ο缶幊碳夹g(shù)通過(guò)前面的實(shí)例,我們了解面向?qū)ο缶幊痰膬蓚€(gè)特性:使用對(duì)象基于事件面向?qū)ο笫鞘褂妙?cl