C#模拟MSN窗体抖动

C#模拟MSN窗体抖动

窗体抖动是件很有意思的事情,就让我们看看一起来看看它的原理吧。 
其实是生成随机数,然后改变Form的左上角的坐标。
我用的是循环来弄得,其实可以用timer来控制.

我把抖动分成了两种抖动:
1。 生成随机数,改变窗体左上角坐标,然后立即把窗体的坐上角坐标还原,继续循环。
2。
生成随机数,改变窗体左上角坐标,循环完毕之后,然后立即把窗体的坐上角坐标还原。

核心代码如下:

//第一种抖动
        private void
button1_Click(object sender, EventArgs
e)
       
{
            int
recordx =
this.Left;           
//保存原来窗体的左上角的x坐标
           
int recordy =
this.Top;            
//保存原来窗体的左上角的y坐标

Random
random = new Random();

for (int i
= 0; i < 100;
i++)
           
{
               
int x =
random.Next(rand);
               
int y =
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坐标
           
}
           
       
}

//第二种抖动
        private void
button2_Click(object sender, EventArgs
e)
       
{
            int
recordx =
this.Left;
           
int recordy =
this.Top;
           
Random random = new
Random();
           
for (int i = 0; i < 50;
i++)
           
{
               
int x =
random.Next(rand);
               
int y =
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;
        }

时间: 2024-10-05 13:41:03

C#模拟MSN窗体抖动的相关文章

winform窗体抖动

private void button1_Click(object sender, EventArgs e) { //实现窗体抖动的效果 Point first = this.Location; for (int i = 0; i < 50; i++) { Application.DoEvents(); Random ran = new Random(); Point p = new Point(this.Location.X + ran.Next(10) - 4, this.Location.

C# 窗体抖动

private void button1_Click(object sender, EventArgs e) { int recordx = this.Left; //指定窗体左边值 int recordy = this.Top; //指定窗体上边值 for (int i = 0; i < 10; i++) //抖动次数 { if (i % 2 == 0) //如果i 能给2整除 { this.Left = this.Left + 10; //窗体左边值加10 } else //否则 { thi

模拟QQ窗口抖动效果(通过MoveWindow和Sleep进行模拟)

[cpp] view plain copy RECT rtWindow; GetWindowRect(&rtWindow); //long x = 400; //long y = 200; long x = rtWindow.left; long y = rtWindow.top; long cxWidth = rtWindow.right-rtWindow.left; long cyHeight = rtWindow.bottom-rtWindow.top; const long nOffse

ym——android源代码大放送(实战开发必备)

转载请注明本文出自Cym的博客(http://blog.csdn.net/cym492224103),谢谢支持! 目录 PATH 列表 卷序列号为 000A-8F50 E:. │  javaapk.com文件列表生成工具.bat │  使用说明.txt │  免费下载很多其它源代码.url │  文件夹列表.txt │ ├─android web应用 │      jqmDemo_static.zip │      jqmMobileDemo-master.zip │      jqmMobil

KTV点歌系统

巴黎的雨季 博客园 首页 新随笔 联系 订阅 管理 随笔 - 57  文章 - 0  评论 - 37 KTV点歌系统 经过十多天的艰苦奋战,MyKTV点歌系统终于成型,从刚开始接到项目的茫然,到完成项目时的喜悦,整个过程的艰辛和付出只有自己知道.虽然这个项目还有许多需要完善的地方,譬如添加歌词信息,实现窗体的美化等,这些在后续时间里我再一一进行一个完善吧! 首先呢,我先将整个项目所能实现的功能做一个简单的介绍,KTV点歌系统包括了前台和后台两大部分,前台的功能就是能够根据客户的需求来实现点歌操作

SSAS多维数据集以及维度的建立

首先打开vs建立一个Analysis Services项目,然后点击数据源文件右键[新建数据源],根据数据源向导建立自己的数据源,如图1: 点击[确定],选择刚才的数据连接,点击[下一步]进入模拟信息窗体,这一步记得我的电脑只能选择“使用服务账户这一项”,不然后期处理多维数据集时会连接不上数据库,当然这个看个人电脑情况,因为我同事选择的是“使用特定windows用户名和密码”这一项依然处理成功了.这一步视个人电脑而定.图2: 然后[下一步]完成数据源向导.接下来建立数据源视图为建立多维数据集提供

iMessenger 2.0.14.0801简述

有些梦,看似遥不可及.但并非不能实现,仅仅要你足够的强!!.人力有时而穷,所以我们可能还须要一些热心人的帮助.这个人可能就是你. 四年来,我们一直在努力,从未放弃. 在我们做好一件事之前.我们永远不知道你这样做的意义.但我们一如既往的坚持.所以! 结果非常意外! 梦想和现实的距离就是心到手的距离,或许我们手中的现实和我们心中的梦想不同. 我们不知道我们所谓的坚持一開始到底意欲何为,但终于当你坚持下去后你发现心与手越来越近. 当产品本身和市场无关时,我们选择了站在产品一方. 先进的技术方案: 不管

nomasp 博客导读:Android、UWP、Algorithm、Lisp(找工作中……

Profile Introduction to Blog 您能看到这篇博客导读是我的荣幸.本博客会持续更新.感谢您的支持.欢迎您的关注与留言.博客有多个专栏,各自是关于 Android应用开发 .Windows App开发 . UWP(通用Windows平台)开发 . SICP习题解 和 Scheme语言学习 . 算法解析 与 LeetCode等题解 .而近期会加入的文章将主要是算法和Android.只是其他内容也会继续完好. About the Author 独立 Windows App 和

09A-独立按键消抖实验01——小梅哥FPGA设计思想与验证方法视频教程配套文档

芯航线--普利斯队长精心奉献 ? 实验目的: 1.复习状态机的设计思想并以此为基础实现按键消抖 2.单bit异步信号同步化以及边沿检测 3.在激励文件中学会使用随机数发生函数$random 4.仿真模型的概念 实验平台:芯航线FPGA核心板 实验原理: ????按键在电子设计中使用的最多,从复位到控制设置均可以看到其身影.现在按键的功能也种类也越来越多,例如多向按键.自锁按键.薄膜按键等.普通按键其硬件示意图如图9-1所示. 图9-1 按键示意图 芯航线开发板所载的为两脚贴片按键,分别位于开发板