Toggle an input

随声附和 提交于 2019-12-20 07:25:41

问题


I am using SlimDX to use my Xbox 360 controller and I would like a way of when pressing a button on the controller the state changes to on and stays on but when I press it again it becomes off. Sort of like a toggle. But I have been unable to do one so far(Just a beginner really).

Thanks for any help. Thomas.


回答1:


You may use a bool to determine if the button is toggled on or off. You will also need to know the gamepad's previous state, so the bool won't toggle all the time, just because you keep pressing the button.

bool myCommand = false; // declare the bool
GamePadState oldState; // you need to know the previous state of your gamepad

public void Update()
{
    if (GamePad.GetState().KeyPressed == /*key*/ && oldState.KeyPressed != /*key*/)
        myCommand = !myCommand;
    oldState = GamePad.GetState();
}

Keep in mind, that you may need to use something other than GamePad or GamePadState, as this is merely pseudo-code



来源:https://stackoverflow.com/questions/14959638/toggle-an-input

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!