在C#中timer的使用

huaihuaihao 2008-12-22 07:29:05
在c#中,我想用一个timer控制一个Label,a,b,c分别是三个Label对象,代码如下:
private void button1_Click(object sender, EventArgs e)
{
this.timer1.Interval = 10;
this.timer1.Start();



}

private void timer1_Tick(object sender, EventArgs e)
{
this.a.Top += 1;
this.b.Top += 2;
this.c.Top += 3;
if (this.a.Top == this.Size.Height)
{
this.a.Top = this.menuStrip1.Size.Height;
}
if (this.b.Top == this.Size.Height)
{
this.b.Top = this.menuStrip1.Size.Height;
}
if (this.c.Top == this.Size.Height)
{
this.c.Top =this.menuStrip1.Size.Height;
}
}
为什么 this.c.Top += 3;这样设置C 之后,C出现一次以后就不出现了呢?而且设置成3或3的倍数都不行,why?
...全文
132 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
ICanUseThisID 2008-12-22
  • 打赏
  • 举报
回复
举个例子,一开始时:
c.Top=0;
this.Height=8;

这样c.Top不停的加3,它可能等于8吗?
ericllzh 2008-12-22
  • 打赏
  • 举报
回复
学习。
huaihuaihao 2008-12-22
  • 打赏
  • 举报
回复
加三为什么要除呢?
ICanUseThisID 2008-12-22
  • 打赏
  • 举报
回复
因为你每次加3啊
huaihuaihao 2008-12-22
  • 打赏
  • 举报
回复
为什么要用到除3呢?
ICanUseThisID 2008-12-22
  • 打赏
  • 举报
回复
上面的label3.top(也就是c.top)是初始的top,
如果不能整除,那么this.c.Top == this.Size.Height不是永远不成立了?
ICanUseThisID 2008-12-22
  • 打赏
  • 举报
回复
准确的说是,this.height-label3.top能被3整除吗?
ICanUseThisID 2008-12-22
  • 打赏
  • 举报
回复
this.height能被3整除吗?
消失的尘芥 2008-12-22
  • 打赏
  • 举报
回复
你看看这个label中的属性是否改动了啊
huaihuaihao 2008-12-22
  • 打赏
  • 举报
回复
我是在问为什么设置成3就不行,其余的都不变
ICanUseThisID 2008-12-22
  • 打赏
  • 举报
回复
把==改为>=

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧