【发布时间】:2020-03-28 19:39:43
【问题描述】:
我正在尝试使用 C# 和 WPF 编写一个小型空间射击游戏。我希望能够通过分别按住向上或向下键来上下移动我的太空船。这样可行。但是,如果我想使用空格键开火,虽然我希望它继续,但运动会停止。我正在使用一个键事件处理程序,该处理程序已注册并实现如下:
MainWindow.KeyDown += new KeyEventHandler(OnKeyDown);
...
private void OnKeyDown(object sender, KeyEventArgs e)
{
double Shift = 20;
switch (e.Key)
{
case Key.Down:
if (Y < Model.Height - Geometry.Height - Shift)
Y += Shift;
break;
case Key.Up:
if (Y > Shift)
Y -= Shift;
break;
case Key.Space:
Fire();
break;
}
}
关于如何实现我想要的任何想法?
【问题讨论】:
-
请注意,您的基本问题并非 WPF 独有,因此与 Winforms 相关的问题包含许多其他有用的信息。参见例如stackoverflow.com/questions/10063580/…、stackoverflow.com/questions/709540/… 和 stackoverflow.com/questions/29942437/…
标签: c# wpf game-development