在游戲中顯示系統(tǒng)默認(rèn)鼠標(biāo)及鼠標(biāo)的基本使用
上一篇我們講了如何設(shè)置游戲的窗口大小及全屏狀態(tài)下分辨率的大小,這一篇我們來(lái)講講如何在游戲中使用鼠標(biāo)。
?
細(xì)心的朋友可以發(fā)現(xiàn),當(dāng)我們運(yùn)行HelloWorld.XNA這個(gè)游戲的時(shí)候,當(dāng)鼠標(biāo)移動(dòng)到游戲窗口中,鼠標(biāo)箭頭不見(jiàn)了!這是怎么回事呢?

這是因?yàn)槟J(rèn)情況下游戲需要自定義鼠標(biāo)圖案,當(dāng)然也可以使用默認(rèn)的系統(tǒng)鼠標(biāo)。
使用默認(rèn)系統(tǒng)鼠標(biāo)
打開(kāi)Game1.cs文件,找到Game1()構(gòu)造函數(shù),將方法內(nèi)的【graphics.IsFullScreen = true;】改為【graphics.IsFullScreen = false;】即窗口模式打開(kāi)游戲!
接著在【graphics.IsFullScreen = false;】的下面輸入

也可以寫(xiě)成this.IsMouseVisible=true,因?yàn)镮sMouseVisible是Game1實(shí)例的屬性。this表示Game1實(shí)例本身。
點(diǎn)擊【啟動(dòng)】

鼠標(biāo)的基本使用
接下去我們要做的是點(diǎn)擊鼠標(biāo)將游戲的背景色改成紅色。打開(kāi)Game1.cs文件,找到【SpriteFont defaultFont;】,在下方定義一個(gè)游戲背景變量

然后找到【?LoadContent()】 方法,在方法體內(nèi)給游戲背景初始化為藍(lán)色

接著找到【Draw(GameTime gameTime)】方法,在方法體內(nèi)將【GraphicsDevice.Clear(Color.CornflowerBlue);】改為

找到【?Update(GameTime gameTime)】方法,在方法體內(nèi)輸入

鼠標(biāo)類(lèi)型有三種鼠標(biāo)左鍵【mouseState.LeftButton】中鍵【mouseState.MiddleButton】右鍵【mouseState.RightButton】,狀態(tài)有兩種鼠標(biāo)按下【ButtonState.Pressed】鼠標(biāo)沒(méi)有按下或放開(kāi)【ButtonState.Released】。
完整代碼如下:


點(diǎn)擊【啟動(dòng)】

運(yùn)行以后你會(huì)發(fā)現(xiàn),這里有個(gè)小問(wèn)題。鼠標(biāo)無(wú)論點(diǎn)擊在桌面的任何位置,游戲背景都會(huì)改變。這里涉及到鼠標(biāo)點(diǎn)擊范圍的問(wèn)題,將在以后的篇幅中進(jìn)行詳細(xì)介紹!