更改计时器tick事件的参数
本文关键字:参数 事件 tick 计时器 | 更新日期: 2023-09-27 18:07:38
我正在使用Windows编写一个。net应用程序。c#中的表单。我正在用画盒模仿记分牌。我们的计划是每计时一次将其宽度调整为2px,直到它们达到所需的宽度。这就是问题所在,因为我不知道如何告诉timer tick函数picturebox的宽度应该增加多少。我不想为每个图片框使用不同的方法,因为我不认为这真的是最佳的方法。
所以,问题是,我如何设置指定的pixtureboxes和所需的宽度受timer_tick方法的影响?
我正在尝试做一些像波兰版的家庭宿怨板:https://www.youtube.com/watch?v=uL-y18ZkbcQ(从3:05观看)
只需编写一个小助手类来跟踪计时器和图片框。它可以像这样:
class Animator : IDisposable {
private Timer timer;
private PictureBox pbox;
private int maxSize;
public Animator(PictureBox box, int size) {
pbox = box;
maxSize = size;
timer = new Timer() { Interval = 45, Enabled = true };
timer.Tick += animate;
}
private void animate(object sender, EventArgs e) {
if (pbox.IsDisposed || pbox.Width >= maxSize) Dispose();
else pbox.Width += Math.Min(2, maxSize - pbox.Width);
}
public void Dispose() { timer.Dispose(); }
}
现在你可以在你的Form类中使用一个简单的语句创建任意数量的文件:
new Animator(pictureBox1, 50);