C#模拟MSN窗体抖动的实现代码
基于C#实现窗体的抖动是件很有意思的事情,原理并不难,其实是生成随机数,然后改变Form的左上角的坐标即可。
这里用的是循环来实现的,其实还可以用timer来控制.
我把抖动分成了两种抖动:
1.生成随机数,改变窗体左上角坐标,然后立即把窗体的坐上角坐标还原,继续循环。
2.生成随机数,改变窗体左上角坐标,循环完毕之后,然后立即把窗体的坐上角坐标还原。
主要功能代码如下:
//第一种抖动
privatevoidbutton1_Click(objectsender,EventArgse)
{
intrecordx=this.Left;//保存原来窗体的左上角的x坐标
intrecordy=this.Top;//保存原来窗体的左上角的y坐标
Randomrandom=newRandom();
for(inti=0;i<100;i++)
{
intx=random.Next(rand);
inty=random.Next(rand);
if(x%2==0)
{
this.Left=this.Left+x;
}
else
{
this.Left=this.Left-x;
}
if(y%2==0)
{
this.Top=this.Top+y;
}
else
{
this.Top=this.Top-y;
}
this.Left=recordx;//还原原始窗体的左上角的x坐标
this.Top=recordy;//还原原始窗体的左上角的y坐标
}
}
//第二种抖动
privatevoidbutton2_Click(objectsender,EventArgse)
{
intrecordx=this.Left;
intrecordy=this.Top;
Randomrandom=newRandom();
for(inti=0;i<50;i++)
{
intx=random.Next(rand);
inty=random.Next(rand);
if(x%2==0)
{
this.Left=this.Left+x;
}
else
{
this.Left=this.Left-x;
}
if(y%2==0)
{
this.Top=this.Top+y;
}
else
{
this.Top=this.Top-y;
}
System.Threading.Thread.Sleep(1);
}
this.Left=recordx;
this.Top=recordy;
}热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下