999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于C#的游戲倒計時功能的實現(xiàn)

2018-07-05 03:51:02
信息記錄材料 2018年8期
關鍵詞:按鈕游戲

武 岳

(河南工業(yè)貿(mào)易職業(yè)學院 河南 鄭州 451191)

1 引言

在C#中,不僅可以開發(fā)一些簡單的控制臺應用程序,還可以開發(fā)WinForm窗體應用程序。WinForm提供了一系列非常豐富的控件,用來創(chuàng)建Windows窗體應用程序。每一個控件模型都相當于一個類,每個類都有很多屬性和事件來提供多種功能,通過繼承和擴展這些控件類來使Windows窗體界面變得豐富多彩。在這些控件中,我們利用常用的Label、Button、Timer和ProgressBar控件,來實現(xiàn)簡單的游戲倒計時功能。

2 Microsoft Visual Studio 2010開發(fā)環(huán)境介紹

Visual Studio是微軟公司推出的一種程序開發(fā)環(huán)境,也是目前最流行的支持C#、C++等多語言開發(fā)的平臺環(huán)境。本文所使用的Visual Studio 2010版本于2010年4月12日上市,重新設計和組織了其集成開發(fā)環(huán)境(IDE)的界面,變得更加簡單明了。Visual Studio 2010同時帶來了NET Framework 4.0、Microsoft Visual Studio 2010 CTP(Community Technology Preview--CTP),并且支持開發(fā)面向Windows 7的應用程序。它同時支持Microsoft SQL Server、IBM DB2和Oracle數(shù)據(jù)庫,可以來創(chuàng)建網(wǎng)絡服務,智能設備應用程序,Windows平臺下的網(wǎng)絡應用程序和Windows應用程序。

3 需求分析

該程序是進入游戲之前的界面,主要實現(xiàn)在游戲加載過程中的倒計時功能。當用戶點擊“開始游戲”按鈕時,窗體上出現(xiàn)10秒鐘倒計時,并且進度條每秒鐘增加%10,當?shù)褂嫊r結(jié)束時,彈出“進入游戲?”的提示框,通過選擇消息對話框中的“是”和“否”按鈕來確定是否進入游戲。如果點擊“是”按鈕,則顯示另外一個窗體Game,即打開游戲。游戲部分的功能在本程序中不做實現(xiàn)。而游戲窗體關閉后則整個應用程序結(jié)束。如果點擊“否”按鈕,則整個應用程序結(jié)束。界面設計如圖1、2所示。

圖1 游戲倒計時界面

圖2 消息對話框界面

4 功能實現(xiàn)

該程序需要使用三個Label控件來顯示提示信息和倒計時時間,一個Button控件來開始計時,倒計時使用Timer控件實現(xiàn),使用進度條ProgressBar來實現(xiàn)可視化的倒計時效果。

4.1 界面設計

在VS2010開發(fā)環(huán)境下,選擇【文件】-【新建】-【項目】,選擇Visual C#下的Windows窗體應用程序,命名為Time。更改默認窗體Form1的Name屬性為“FormMain”、Text屬性為“倒計時”。在項目名上右鍵,選擇添加一個新的Windows窗體,窗體名為Game,用來表示游戲界面,該窗體不做設計。

從工具箱中分別拖放三個Label控件,一個Button控件、一個Timer組件和一個ProgressBar控件。分別設置三個Label的Name屬性為“Textlabel1”、“Textlabel2”和“Timelabel”,設置它們的Text屬性為“啟動游戲倒計時:”、“游戲加載中:”和“”空字符。設置“Timelabel”的Font屬性為“宋體, 15pt, style=Bold”。其中,“Textlabel1”和“Textlabel2”用來顯示提示信息,“Timelabel”用來顯示倒計時時間。設置Button的Name屬性為“buttonStart”、Text屬性為“開始游戲”。Timer組件的作用是周期性的執(zhí)行某個操作,其默認事件Tick用來執(zhí)行這些操作,而Tick事件的執(zhí)行周期,則由Interval屬性控制。將Timer組件的Interval屬性修改為1000,即每1000毫秒(1秒)觸發(fā)一次Tick事件。ProgressBar控件,又叫進度條控件。該控件最常用的三個屬性分別為:Value、Maximum和Minimum。Value屬性表示進度條的當前數(shù)值,取值為整數(shù);Minimum表示進度條的最小值,默認值為0;Maximum表示進度條的最大值,默認值為100。ProgressBar控件的屬性均采用默認值,不做修改。

4.2 代碼實現(xiàn)

在窗體的設計視圖下,鼠標雙擊ButtonStart按鈕,則自動生成該按鈕的Click事件,代碼如下:

private int time;

//私有字段time,用來表示倒計時的剩余時間。

private void buttonStart_Click(object sender,EventArgs e)

//單擊“開始游戲”按鈕所觸發(fā)的事件

{

time = 9;

progressBar1.Value = 0;

timer1.Start();

}

定義一個int類型的字段time,用來表示倒計時的剩余時間。由于需要在多個事件中使用該值,所以定義成字段。在Click事件中,將time的初值定義為9,將進度條的初始值定義為0,然后調(diào)用Start方法啟動Timer控件,開始進入周期計時。

在窗體的設計視圖下,鼠標雙擊Timer1控件,則自動生成它的Tick事件,代碼如下:

private void timer1_Tick(object sender,EventArgs e)

{

if (time!=10)

{

progressBar1.Value += (int)(progressBar1.Maximum*0.1);

//每一個Interval周期里,進度條增加進度條最大值的百分之十。

}

Timelabel.Text = time.ToString();

if (time==0)

//當?shù)褂嫊r剩余時間為0時,停止計時,即Timer控

件停止使用

{

timer1.Stop();

DialogResult r=MessageBox.Show("進入游戲?",

"開 始",M e s s a g e B o x B u t t o n s.YesNo,MessageBoxIcon.Question);

//用消息對話框給出相應提示

if (r==DialogResult. Yes)

{Game g = new Game();g.ShowDialog();

Application.Exit();

}

else

{

Application.Exit();

}

}

time--;

//每一次Tick事件結(jié)束,將倒計時剩余時間減一。

}

在Tick事件中,首先通過if語句判斷剩余時間是否為10,如果不為10,則每個Interval周期里,進度條增加百分之十。將當前time的值轉(zhuǎn)換為字符串類型后,賦值給Timelabel.Text,通過Timelabel顯示剩余的時間。當剩余時間為0時,停止計時,即Timer控件停止使用,通過timer1的Stop方法將控件停用。通過調(diào)用MessageBox類的Show方法,彈出消息對話框提示,界面如圖2所示。Show方法的返回值是DialogResult枚舉值之一。枚舉值有:OK、Cancel、Yes、No和None。通過枚舉值的判斷可以確定在對話框中單擊了哪個按鈕。Show方法有多種重載,其四個參數(shù)依次表示對話框顯示的文本、標題、按鈕和圖標。最后,判斷Show方法的返回值,如果為枚舉值Yes,則調(diào)用ShowDialog方法顯示游戲窗體Game,并在Game關閉后通過調(diào)用Application類的Exit方法結(jié)束應用程序。否則,直接結(jié)束應用程序。

[1]傳智播客高教產(chǎn)品研發(fā)部. C#程序設計基礎入門教程.人民郵電出版社.2014年6月.

[2]馬駿.C#網(wǎng)絡應用編程基礎.人民郵電出版社.2006年10月.

[3]馬駿,鄭逢斌,沈夏炯.C#網(wǎng)絡應用高級編程.人民郵電出版社,2006年10月.

猜你喜歡
按鈕游戲
這些按鈕能隨便按嗎?
哪個是門鈴真正的按鈕
當你面前有個按鈕
死循環(huán)
游戲
數(shù)獨游戲
瘋狂的游戲
飛碟探索(2016年11期)2016-11-14 19:34:47
爆笑游戲
第八章直接逃出游戲
小學科學(2015年7期)2015-07-29 22:29:00
第八章 直接逃出游戲
小學科學(2015年6期)2015-07-01 14:30:14
主站蜘蛛池模板: 麻豆精品在线视频| 中文字幕第1页在线播| 国产成人免费观看在线视频| 亚洲丝袜中文字幕| 日韩精品免费一线在线观看| 最新国产麻豆aⅴ精品无| 亚洲VA中文字幕| 99久久国产综合精品2020| 国产精品短篇二区| 玖玖精品视频在线观看| 九九九精品成人免费视频7| 欧美在线网| 不卡无码网| 亚洲人在线| 国产精品无码AV片在线观看播放| jizz在线观看| 免费全部高H视频无码无遮掩| 试看120秒男女啪啪免费| 亚洲αv毛片| 午夜欧美理论2019理论| 精品撒尿视频一区二区三区| 特级欧美视频aaaaaa| 真实国产乱子伦视频| 亚洲天堂免费| 青青草原国产精品啪啪视频| 亚洲高清在线天堂精品| 国产91小视频在线观看| 狠狠色狠狠色综合久久第一次| 亚洲性一区| 国产精品视频a| 欧美亚洲中文精品三区| 一级做a爰片久久毛片毛片| 国产精品30p| 无码精品国产dvd在线观看9久| 国产青榴视频在线观看网站| 韩国v欧美v亚洲v日本v| 国产丝袜第一页| 欧美午夜视频在线| 国产99视频免费精品是看6| 精品丝袜美腿国产一区| 永久免费无码成人网站| 亚洲三级a| 天天色天天综合| 黄色a一级视频| 91在线免费公开视频| 亚洲人在线| 亚洲高清国产拍精品26u| 国产成人超碰无码| 99热这里只有精品久久免费| 亚洲中文字幕国产av| 在线观看91香蕉国产免费| 激情五月婷婷综合网| 日韩高清一区 | 国产在线无码一区二区三区| 99草精品视频| 精品無碼一區在線觀看 | 日韩在线观看网站| 成人免费视频一区二区三区 | 国产黄在线免费观看| 精品人妻无码区在线视频| 99久久精品免费看国产电影| 国产成人一区| 91亚洲精选| 无码精品国产VA在线观看DVD| 欧美日韩在线亚洲国产人| 激情乱人伦| 天堂在线视频精品| 亚洲成a人片| 国产一级精品毛片基地| 国产精品一区在线麻豆| 伊人91在线| 999国产精品| 日韩中文欧美| 亚洲无码高清视频在线观看| 欧美日韩精品一区二区视频| 98超碰在线观看| 亚洲bt欧美bt精品| 色婷婷成人网| 一级毛片在线播放免费观看| 欧美翘臀一区二区三区| 亚洲日韩精品欧美中文字幕| 久久综合五月婷婷|