我的代码有什么问题我正在尝试使用visual studio制作空间入侵者
using System;
using System.Windows.Forms;
namespace _2nd_game_try
{
public partial class Form1 : Form
{
bool goleft, goright;
int playerSpeed = 13;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void keydown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Left)
{
goleft = true;
}
if (e.KeyCode == Keys.Right)
{
goright = true;
}
}
private void keyup(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Left)
{
goleft = false;
}
if (e.KeyCode == Keys.Right)
{
goright = false;
}
}
private void gameTime_Tick(object sender, EventArgs e)
{
}
private void Walk()
{
while (true)
{
if (goleft)
{
player.Left -= playerSpeed;
}
if (goright)
{
player.Left += playerSpeed;
}
}
}
}
}
- 启用定时器并使用有效间隔
- 从
Walk()
方法中移除while (true) - 呼叫
Walk()
内定时器回呼。 - 订阅keyup和keydown事件处理程序
- 设置keypreview属性为true