我正在學習XNA(v。4.0),我正在使用鍵盤上的箭頭鍵移動精靈,並在空間中製作字符sprint舉行。XNA Keyboard.GetState()不返回按下所有按鍵
下面是我的代碼,以確定被按下哪些鍵:
currentKBState = Keyboard.GetState();
bool right = currentKBState.IsKeyDown(Keys.Right);
bool left = currentKBState.IsKeyDown(Keys.Left);
bool up = currentKBState.IsKeyDown(Keys.Up);
bool down = currentKBState.IsKeyDown(Keys.Down);
bool space = currentKBState.IsKeyDown(Keys.Space);
System.Diagnostics.Debug.WriteLine(String.Format("{0} {1} {2} {3} {4}", right, left, up, down, space));
的問題是,我不能得到所有5個在同一時間按下。有時只有兩個會註冊。例如,如果我保持向上,向下和向左,它只能說上下是真的,不管我持有三個鍵多久。我希望能夠處理,不管按什麼組合。爲什麼它沒有註冊所有正在按下的按鈕?我需要做一個不同的方式嗎?
這可能是由你自己的鍵盤造成的檢查。 – Skami