我正在 Windows 窗体中制作一个小游戏,我的主角必须在一定时间内捕捉蝴蝶。角色随着箭头键的 KeyDown 事件移动,有一个进度条显示经过的时间(它由计时器的 Tick 事件填充),蝴蝶在另一个计时器的帮助下在屏幕上随机移动。在 ButterflyMovement 计时器的 Tick 事件和 KeyDown 事件中重新绘制窗体。
我的主要问题是,每当我按住任何箭头键时,进度条都会停止填充,蝴蝶也会停止移动。当我放开按键时,pbar 恢复填充,蝴蝶再次开始移动。我猜这个问题与 KeyDown 事件有关,导致某种循环在按住键时停止计时器。我该如何解决这个问题,以便在按住键时计时器继续滴答作响?而且,这甚至是问题吗?我想一定有办法,但我有一种预感,这可能与在 WinForms 中做游戏的局限性有关。