C# 使用每秒帧数计时器浏览“动画书”

C# 使用每秒帧数计时器浏览“动画书”,c#,C#,下面是我创建的代码,试图创建一个由播放/停止按钮控制的时间线。我使用工具箱中的计时器在使用framesPerSecond进行时间线时增加时间。我觉得计时器似乎有点不准。我想知道是否有人对更准确地控制时间提出了改进建议?我是c#的新手,所以请耐心听我讲编码。如果有帮助的话,这段代码适用于我想要创建的一个更大的项目,这将是时间轴的控件,它最终将通过幻灯片等图像进行交换。 谢谢 每次调用动画书,您都会添加一个新的勾号事件,因此是的,它会运行多次 将该声明移动到构造函数: public Form1()

下面是我创建的代码,试图创建一个由播放/停止按钮控制的时间线。我使用工具箱中的计时器在使用framesPerSecond进行时间线时增加时间。我觉得计时器似乎有点不准。我想知道是否有人对更准确地控制时间提出了改进建议?我是c#的新手,所以请耐心听我讲编码。如果有帮助的话,这段代码适用于我想要创建的一个更大的项目,这将是时间轴的控件,它最终将通过幻灯片等图像进行交换。 谢谢


每次调用
动画书
,您都会添加一个新的勾号事件,因此是的,它会运行多次

将该声明移动到构造函数:

public Form1()
{
  InitializeComponent();
  timer.Tick += new EventHandler(timer_Tick);
}
有关计时器的功能,请参阅

Windows窗体计时器组件是单线程的,精度限制为55毫秒。如果需要精度更高的多线程计时器,请使用System.Timers命名空间中的timer类


你的问题具体是什么?计时器不太适合精确计时,更不用说如此小的时间跨度了。但是为了给你指出正确的解决方案,我们需要更多关于你试图做什么的信息。好的。我会重写它,并在问题中添加更多代码。你提到在System.Timers命名空间中使用这个“Timer类”,我不太确定如何实现它。你知道有什么好的教程或例子吗?@JokerMartini-See。我试图更新上面的代码,以使多线程计数器更准确。当我试图增加curTime变量时,我不断地得到一个奇怪的错误。不知道它为什么这么做。“想知道你的想法吗?”JokerMartini你一直在错误的地方添加事件处理程序。你似乎错过了我答案的第一部分。我遵循的教程说把它放在按钮上。所以我照上面说的做了。
public Form1()
{
  InitializeComponent();
  timer.Tick += new EventHandler(timer_Tick);
}