多个定时器在windows窗体应用程序
本文关键字:窗体 应用程序 windows 定时器 | 更新日期: 2023-09-27 18:08:03
我尝试在c# visual studio 2010中创建一个小游戏。我想做一些类似游戏Bubble Trouble在windows窗体应用程序
我从工具箱中创建了一个带有3个计时器的表单。一个用于玩家的移动(他通过改变标签的图像来移动它的腿)-这个计时器被设置为在OnKeyDown事件时启用,并在onKeyUp事件时停止。
拍摄的第二个计时器-当空格键被按下时,该计时器设置为在事件"onKeyPress"上启用。该定时器用于逐片绘制射击线。
第三个计时器是为球员应该弹出的球-这个计时器一直在运行,它的建议是移动球。
但我发现的问题是,当我增加球计时器的间隔-然后当其他计时器设置为启用时,他们都变得非常慢。
我能做些什么来解决这个问题?
我建议稍微重构一下你的代码,如下所示:
- 改变模块级状态变量的值,而不是在keydown和keyup事件中启用和禁用定时器。
按下拍摄键可以:
_shootKeyDown = True
射击键的上键可以:
_shootKeyDown = False
然后你就可以在一个计时器事件中处理所有需要更新的元素,这个计时器事件以你想要的任何间隔发生。
If _shootKeyDown Then
...
End If
If _playerDirection <> "" Then
...
End If
If _ballExists Then
...
End If