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;
        }

Demo下载

C#模拟MSN窗体抖动[原创]相关推荐

  1. C#模拟MSN窗体抖动

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

  2. 直播电商软件开发,实现窗体抖动

    直播电商软件开发,实现窗体抖动相关的代码 public class Shake {/// <summary>/// 震动方法/// </summary>/// <para ...

  3. mos 多路模拟电子开关_【原创】单火线智能开关技术介绍及分析

    文章来自电子星球APP--<单火线智能开关技术介绍及分析> 作者:leo.zhao 单火线智能开关的概念 众所周知,国内220V电网市电有两根线:一根火线和一根零线,此外为了保护人身安全有 ...

  4. 简单的窗体抖动托管c++

    新建一个项目,在窗体中添加一个按钮控件.然后加入代码. 所有代码如下: namespace frmdd { using namespace System;  using namespace Syste ...

  5. 模拟苹果验证服务器,[原创]苹果 gsa 服务器login 算法

    闲得蛋疼,对iTunes 登陆过程进行了初步的分析. 解密得到了spd字段内容. 将分析过程写出来,混个熟脸. 在分析这个东西之前, 需要做一些准备工作.  比如收集论坛前辈们的工作经验, githu ...

  6. mysql 模拟序列_【原创】MySQL 模拟PostgreSQL generate_series 表函数

    PostgreSQL 提供了一个很强大的造数据的函数generate_series,基于Common Table Expression. MySQL 没有复杂的应用程序类型,该如何实现这样的功能呢? ...

  7. java模拟购物车窗体小程序,微信小程序实现购物车效果 示例源码

    [实例简介] [实例截图] [核心代码] // pages/shopcart/shopcart.js Page({ /** * 页面的初始数据 */ data: { 'goodList': [ { ' ...

  8. 一种用户体验-显示对话框时灰化你的主窗体

    袁永福 ( http://www.xdesigner.cn ) 2007-8-10 程序全部源代码下载(工程文件使用VS.NET2003格式):/Files/xdesigner/DisableMask ...

  9. ai去除水印_ai全自动视频剪辑软件,每天批量制作800条原创视频!

    亲爱的读者朋友,今天咱们就长话短说,直接进入正题,为大家介绍一款真正能够实现全自动化的黑科技剪辑软件. 本软件功能十分强大,支持多个视频素材批量合成,支持选择配音员.配音语速.配音语速,还可以设置字幕 ...

最新文章

  1. 同样是搞Java,年薪15W和50W的到底差在哪里?
  2. Java反射(自己的理解)
  3. not enough actual parameters for macro 'min'(QT与vs2010)
  4. 定时器和promise_Promise面试题,控制异步流程
  5. 日志库EasyLogging++学习系列(10)—— 日志文件滚动
  6. JDK8-lambda表达式四种forEach性能对比
  7. 十、探索性数据分析的图形化探索
  8. 计数排序、桶排序和基数排序
  9. 编程题【System类】计算一千万个数添加到集合的时间
  10. 在html中单选选择器,已选中单选按钮标签的CSS选择器
  11. cad无法加载arx文件_CAD文件损坏?无法打开?试试这8个方法吧
  12. 一个实际使用的容灾方案
  13. hash hmac java_认证加密算法php hash_hmac和java hmacSha1的问题
  14. 用计算机编程解决土方调配,LINGO在土方调配计算问题应用.doc
  15. volatile能保持线程安全吗_volatile变量能保证线程安全性吗?为什么?
  16. 2021 GitHub年度排行榜出炉!中文Top3项目诞生!
  17. 小松鼠邮件(squirrelmail)服务器部署(squirrelmail+Postfix)
  18. mysql备份数据库怎么还原数据库文件_mysql如何备份和还原数据库文件
  19. 计算机组成原理学习笔记(上)
  20. 电化学工作站的原理与应用

热门文章

  1. 云服务器有什么好 能让云大佬们竞争如此激烈
  2. 它是最神秘的黑客组织:来自战斗民族 专黑美国
  3. Intellij Idea 使用
  4. 摄影技巧的种类之一             ——街拍技巧
  5. 重装mysql遇到的问题
  6. “程序”二字的五笔字根
  7. 一种zernike多项式的解释(暂时没有弄完)
  8. Flink SQL Client进行Kafka事实表与Hbase维度表Join(纯DDL/SQL方式)
  9. Flink1.12 standalone-HA配置(转载+自己验证)
  10. wine: Unhandled page fault on read access to 0x00000000 at address 0x10b1fb8