DelphiX教程系列 1 - 使用键盘和摇杆
用到的組件(TDXInput、TTimer):
原文鏈接:http://www.delphigamedev.com/tutorials/dxtut1.htm
在這一教程里,我們將會學(xué)習(xí)如何使用鍵盤來移動我們的角色(在DelphiX的組件的幫助下)。如果您還沒有這些組件,您可以通過這里來下載最新的版本。一旦您成功安裝DelphiX,您就能開始學(xué)習(xí)本教程了。我們將會使用其中特定的組件——DXInput,該組件能允許我們處理鍵盤和搖桿的輸入。
?
那么,開始前我們還需要裝載我們的代碼(這里下載)。我們需要移去窗體上的按鈕,還有其BtnClick過程的源代碼。首先,我們需要修改每個BtnClick過程的第一行代碼,使其不再關(guān)聯(lián)到buttons里的Onclick事件。
procedure TForm1.LeftBtnClick(Sender: TObject);應(yīng)該修改成:
procedure TForm1.Leftprocedure TForm1.UpBtnClick(Sender: TObject);
應(yīng)該修改成:
procedure TForm1.Up;procedure TForm1.RightBtnClick(Sender: TObject);
應(yīng)該修改成:
procedure TForm1.Right;procedure TForm1.DownBtnClick(Sender: TObject);
應(yīng)該修改成:
procedure TForm1.Down;現(xiàn)在我們需要刪除窗體上的4個方向按鈕。之后我們還需要刪除type聲明區(qū)域下所有屬于這幾個按鈕的過程代碼。如下:
procedure LeftBtnClick(Sender: TObject);procedure UpBtnClick(Sender: TObject);
procedure RightBtnClick(Sender: TObject);
procedure DownBtnClick(Sender: TObject);
在我們使用Left、Right、Up和Down這4個過程之前,我們需要添加以下的代碼來再次聲明他們(在private聲明區(qū)域下,其他事先聲明的過程之前聲明)。
procedure Left;procedure Right;
procedure Up;
procedure Down;
我 們準備好使用DXInput組件了。首先雙擊其組建欄上的圖標,使之添加到窗體上。如果您不確定是哪個組件,請參照本文頂部的組件列表。我們還需要另外一 個組件——Timer,您可以在組件欄的System標簽下找到(一個鐘面的圖標)。雙擊該圖標使之添加到窗體上。我們將會使用它來定期地檢查鍵盤上的方 向鍵是否被按下。您需要修改其時間間隔(默認值為1000毫秒)為50毫秒左右,使計算機能夠檢查到是否有鍵按下。您可能需要把該值調(diào)高一些,因為您在運 行該程序的時候會發(fā)現(xiàn)鍵盤上的按鍵會有點過于敏感(譯注:響應(yīng)太快)。現(xiàn)在我們開始寫DXInput組件的代碼。所有的代碼都寫在Timer的過程里,我 們雙擊窗體上的Timer圖標。
在begin之后輸入以下代碼:
DXInput1.Update;if isLeft in DXInput1.States then Left;
if isRight in DXInput1.States then Right;
if isUp in DXInput1.States then Up;
if isDown in DXInput1.States then Down;
這些代碼簡單的告訴程序去檢查是否有任何按鍵按下。如果是,則在左方向鍵按下的時候調(diào)用Left過程,在右方向鍵按下的時候調(diào)用Right過程,其他亦然。你可以現(xiàn)在運行該程序,通過鍵盤來控制窗體上的角色移動。
?
最后,如果您有連接到電腦的搖桿,您會發(fā)現(xiàn)您能使用搖桿上的上下左右鍵來移動您的角色。
在下一個教程里,我們將繼續(xù)學(xué)習(xí)其他有用的DelphiX組件。如果您對本教程有任何疑問或建議,請E-mail我,郵箱地址為:ben@delphigamedev.com
?
本 系列譯文在博客園發(fā)表,除允許在互聯(lián)網(wǎng)上自由轉(zhuǎn)載外,不允許以其它任何方式拷貝、編輯、印刷出版、制作發(fā)行及傳播,包括不允許在筆者未知曉的情況下制作成 各種格式的電子文檔并傳播,更不得在未經(jīng)筆者本人允許的情況下以任何形式的拷貝用于商業(yè)用途。筆者對本系列譯文保留有追究其侵權(quán)責(zé)任的權(quán)利。
若需制成電子文檔并用于非商業(yè)用途方式的傳播,請保留以下版權(quán)信息,并與筆者聯(lián)系郵寄副本一份。
作者:Nicholas.Yuen
網(wǎng)名:小丸
Email:ruanjiayuan AT gmail.com ( AT -> @)
Blog:http://genkagen.blogspot.com/
時間:2008.08.05
Copyright: All right resver
PS:轉(zhuǎn)載請保留以上版權(quán)信息
轉(zhuǎn)載于:https://www.cnblogs.com/waterfalleagle/archive/2010/06/27/1766330.html
總結(jié)
以上是生活随笔為你收集整理的DelphiX教程系列 1 - 使用键盘和摇杆的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java web程序中备份oracle数
- 下一篇: 工作在微软