亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Qt4的掃雷游戲的設(shè)計(jì)與實(shí)現(xiàn)

        2012-08-08 02:31:52鄧志良
        關(guān)鍵詞:圖形用戶界面方塊鼠標(biāo)

        柯 勝,孫 進(jìn),鄧志良

        (1.江蘇科技大學(xué),江蘇 鎮(zhèn)江 2120031;2.常州信息職業(yè)技術(shù)學(xué)院,江蘇 常州 213164)

        最初以訓(xùn)練鼠標(biāo)操作為目的而設(shè)計(jì)的掃雷游戲是一款經(jīng)久不衰的Windows平臺(tái)休閑游戲。盡管Windows操作系統(tǒng)經(jīng)歷數(shù)次換代,變得越來(lái)越龐大、復(fù)雜,但這個(gè)可愛(ài)的小游戲在任何版本的Windows操作系統(tǒng)里卻依然保持著原貌,幾乎每個(gè)電腦使用者都接觸過(guò)[1]。

        Qt是諾基亞開(kāi)發(fā)的一個(gè)跨平臺(tái)的C++圖形用戶界面應(yīng)用程序框架。它為應(yīng)用程序開(kāi)發(fā)者提供建立藝術(shù)級(jí)的圖形用戶界面所需的所有功能。Qt是完全面向?qū)ο蟮?,很容易擴(kuò)展,并且允許真正地組件編程。自1996年,Qt進(jìn)入商業(yè)領(lǐng)域,它已經(jīng)成為全世界范圍內(nèi)數(shù)千種成功的應(yīng)用程序的基礎(chǔ)。Qt也是流行的Linux桌面環(huán)境KDE的基礎(chǔ)?;旧希琎t與X Window上的Motif、Openwin、GTK等圖形界面庫(kù)和 Windows平臺(tái)上的 MFC、OWL、VCL、ATL屬同類型,但 Qt具有優(yōu)良的跨平臺(tái)特性、面向?qū)ο?、豐富的API、大量的開(kāi)發(fā)文檔等優(yōu)點(diǎn)[2]。

        本課題是在Linux系統(tǒng)下設(shè)計(jì)并開(kāi)發(fā)的,設(shè)計(jì)了一款基于Qt環(huán)境的掃雷游戲,使用了C++語(yǔ)言程序。

        1 掃雷游戲主界面的設(shè)計(jì)

        游戲主界面由菜單、游戲區(qū)、按鈕區(qū)、信息顯示區(qū)等幾部分構(gòu)成,如圖1所示。Qt提供了一套完整的GUI模塊,能夠完成基本的Windows窗體應(yīng)用程序,因此可以簡(jiǎn)單地為掃雷程序制作出界面[3]。圖1主要通過(guò)子類化QmainWindow創(chuàng)建掃雷游戲應(yīng)用程序用戶界面。Qt還提供了定時(shí)器,能夠完成游戲的計(jì)時(shí)。

        2 鼠標(biāo)事件的處理

        當(dāng)點(diǎn)擊鼠標(biāo)左鍵時(shí),設(shè)置ok_flag_為true,說(shuō)明此方塊進(jìn)行了翻開(kāi)操作。如果方塊是地雷,發(fā)出一個(gè)explode()信號(hào);如果不是地雷,發(fā)出一個(gè)safe()信號(hào),同時(shí)顯示數(shù)字。這動(dòng)作應(yīng)當(dāng)在ok_flag_無(wú)效且mark_flag_也無(wú)效的前提下進(jìn)行,因?yàn)槿绻鹢k_flag_有效,則說(shuō)明此方塊已經(jīng)翻開(kāi)了,沒(méi)有必要重做;如果mark_flag_有效,則說(shuō)明玩家標(biāo)志此方塊有雷,不應(yīng)該去翻開(kāi),否則即為自取滅亡。

        點(diǎn)擊鼠標(biāo)右鍵進(jìn)行旗幟安插或者移除操作應(yīng)該在ok_flag_無(wú)效的前提下進(jìn)行,因?yàn)閷?duì)于一個(gè)已經(jīng)翻開(kāi)的方塊,安插毫無(wú)意義。

        類的定義如下:

        下面是代碼實(shí)現(xiàn)部分:

        設(shè)計(jì)的實(shí)現(xiàn)比較簡(jiǎn)單,需要說(shuō)明的是本文模擬的鼠標(biāo)事件并不是單擊而是按下,這對(duì)于掃雷已經(jīng)足夠了。同時(shí),會(huì)發(fā)現(xiàn)兩個(gè)信號(hào)函數(shù)沒(méi)有實(shí)現(xiàn),這個(gè)工作會(huì)由moc自動(dòng)完成,因此不必在.cpp中實(shí)現(xiàn),并且它們永遠(yuǎn)不會(huì)有返回值(即 void)。

        3 初始化

        3.1 雷區(qū)/非雷區(qū)的產(chǎn)生

        下面是BlockArea的構(gòu)造函數(shù):

        3.2 周邊雷數(shù)的計(jì)算

        要計(jì)算(x,y)位置周邊地雷的個(gè)數(shù),首先需計(jì)算出一個(gè)點(diǎn),然后判斷此點(diǎn)是否落在BlockArea中,如果落在BlockArea中,再判斷是否是雷,如果是,則計(jì)數(shù)器加1。

        該掃雷游戲在Qt4和Red Hat Enterprise Linux 4操作系統(tǒng)上成功實(shí)現(xiàn),能在Windows和Linux平臺(tái)下運(yùn)行。除能實(shí)現(xiàn)基本的左鍵打開(kāi)、右鍵標(biāo)記的掃雷功能以外,還能實(shí)現(xiàn)計(jì)時(shí)、自定義游戲難度、作弊、語(yǔ)音提示等擴(kuò)展功能。經(jīng)過(guò)試驗(yàn)測(cè)試,界面美觀,結(jié)果正確,各項(xiàng)功能達(dá)到游戲要求。該實(shí)現(xiàn)方法對(duì)其他基于Qt的游戲開(kāi)發(fā)起到了拋磚引玉的作用,其中的鍵盤(pán)、鼠標(biāo)等功能的實(shí)現(xiàn)方法可用于其他Qt編程,同時(shí)對(duì)各專業(yè)人員借助Qt快速開(kāi)發(fā)具備強(qiáng)大計(jì)算機(jī)功能的專業(yè)應(yīng)用軟件具有重要的意義。

        [1]陳子為.基于 Matlab GUI掃雷游戲的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2008(24):85-88.

        [2]BLANCHETTE J,SUMMERFIELD M.C++GUI QT4 編程(第二版)[M].北京:電子工業(yè)出版社,2008.

        [3]張建強(qiáng),張秀梅.掃雷游戲策略初探[J].數(shù)學(xué)教學(xué),2004(6):32-33.

        [4]成潔,盧紫毅.Linux窗口程序設(shè)計(jì)——Qt精彩實(shí)例分析[M].北京:清華大學(xué)出版社,2008.

        [5]趙大偉,肖周芳,張艷.從掃雷游戲淺談一些算法問(wèn)題[J].科技信息,2008(29):69.

        [6]錢(qián)會(huì)敏,于守秋.自動(dòng)掃雷算法淺談[J].科技創(chuàng)新導(dǎo)報(bào),2009(31):250.

        [7]劉艷青,蘇桂蓮.基于Qt4的圖形用戶界面程序的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2009(3):170-172.

        猜你喜歡
        圖形用戶界面方塊鼠標(biāo)
        方塊村(1)
        旋轉(zhuǎn)吧!方塊!
        有多少個(gè)方塊
        不一樣的方塊橋
        Progress in Neural NLP: Modeling, Learning, and Reasoning
        Engineering(2020年3期)2020-09-14 03:42:00
        圖形用戶界面外觀設(shè)計(jì)專利保護(hù)問(wèn)題探析——以“奇虎訴江民案”為例
        淺談圖形用戶界面(GUI)技術(shù)專利現(xiàn)狀
        圖形用戶界面法律保護(hù)問(wèn)題與對(duì)策
        MiniGUI在基于OMAP5912開(kāi)發(fā)板上的移植
        45歲的鼠標(biāo)
        亚洲AⅤ男人的天堂在线观看| 国产黑色丝袜在线看片| 亚洲最新精品一区二区| 国产成人久久精品一区二区三区| 真人抽搐一进一出视频| 帮老师解开蕾丝奶罩吸乳网站| 色先锋av资源中文字幕| 国产午夜影视大全免费观看| 国产精品视频久久久久| 无码伊人66久久大杳蕉网站谷歌| 中文字幕人妻少妇久久| 亚洲一区二区三区综合免费在线| 野外亲子乱子伦视频丶| 亚洲精品国偷自产在线99正片| 久久国产A√无码专区亚洲| 中文字幕久久精品波多野结百度| 白色白色视频在线观看| 风韵犹存丰满熟妇大屁股啪啪| 国产精品无码一区二区三级| 免费网站看v片在线18禁无码| 色婷婷久久综合中文久久蜜桃av| 亚洲饱满人妻视频| 在线观看极品裸体淫片av | 久久精品国产亚洲av豆腐| 亚洲欧美综合精品成人网站| 欧美老妇与zozoz0交| 99热视热频这里只有精品| 超短裙老师在线观看一区二区 | 国产最新女主播福利在线观看| 男人靠女人免费视频网站| 欧美成人精品三级在线观看| 国产一区二区三区成人av| 少妇爆乳无码专区| 国产做无码视频在线观看浪潮 | 亚洲av永久久无久之码精| 国产精品网站91九色| 国产成人无码免费视频在线| 国产精品国产三级国产专区5o| 一区二区视频网站在线观看| 亚洲国产高清精品在线| 67194熟妇在线永久免费观看|