【发布时间】:2024-01-13 09:42:01
【问题描述】:
我正在为一个游戏做一个简单的高分插件。为此,我需要一个精确的计时器,可以在标签中显示经过的时间。到目前为止,我已经尝试了以下方法:
Windows.Forms.Timer:不保持高分辨率间隔,有些较慢,有些较快。
System.Diagnostics.Stopwatch:没有滴答事件。
我也想过实现一个低分辨率的 Forms.Timer。然后,当计时器启动和停止时,我会存储系统时间并减去它们以获得经过的时间。但我不想让事情过于复杂。有什么想法吗?
【问题讨论】:
-
所以你想在标签中显示经过的刻度数?
-
你到底想做什么——测量经过的时间还是间隔执行代码?
-
一个事件永远不可能在时间上精确——它在消息循环中被处理,不能保证它何时发生。为什么事件需要精确?为什么秒表需要刻度事件?
-
@J...我想存储完成游戏所需的确切时间。我需要在标签中显示经过的时间
-
计时器有足够的分辨率来分配标签的 Text 属性。当您以每秒 25 次以上的速度执行此操作时,它只会在人眼中变得模糊。您显示的实际 value 与该计时器没有任何关系。秒表很适合。