C#实现QQ窗口抖动效果

来自:网络
时间:2021-07-15
阅读:

本文实例为大家分享了C#实现QQ窗口抖动效果的具体代码,供大家参考,具体内容如下

实现界面:

1. 两个textbook和两个Button
2. NotifyIcon控件是实现托盘

C#实现QQ窗口抖动效果

实现代码:

private void Form1_Load(object sender, EventArgs e)
 {
  this.Text = "聊天窗口";
  button1.Text = "抖动";
  button2.Text = "发送";
  this.AutoSizeMode = AutoSizeMode.GrowAndShrink;
  textBox1.ReadOnly = true;
  //获取焦点在textBox2上面用来发送消息
  textBox2.TabIndex = 0;
  x = this.Left;
  y = this.Top;
  //设置窗口中某个按钮可以同Enter键进行控制效果
  this.AcceptButton = button2;
 }
 int x, y;
 int t=30, space = 3;
 
 private void Button1_Click(object sender, EventArgs e)
 {
  for (int i=0;i<2 ;i++ )
  {
  this.Location = new Point(x - space, y);
  Thread.Sleep(t);

  this.Location = new Point(x - space, y - space);
  Thread.Sleep(t);

  this.Location = new Point(x, y - space);
  Thread.Sleep(t);

  this.Location = new Point(x + space, y - space);
  Thread.Sleep(t);

  this.Location = new Point(x + space, y);
  Thread.Sleep(t);

  this.Location = new Point(x + space, y + space);
  Thread.Sleep(t);

  this.Location = new Point(x, y + space);
  Thread.Sleep(t);

  this.Location = new Point(x - space, y + space);
  Thread.Sleep(t);

  this.Location = new Point(x - space, y);
  Thread.Sleep(t);

  this.Location = new Point(x, y);
  }
   
 }

 

 private void Button2_Click(object sender, EventArgs e)
 {
  if (String.IsNullOrWhiteSpace(textBox2.Text)==false)
  {
  textBox1.Text += DateTime.Now + "\r\n" + textBox2.Text + "\r\n";
  textBox2.Text = "";
  }  
 }
 //resize窗口尺寸变动
 private void Form1_Resize(object sender, EventArgs e)
 {
  //最小化到系统托盘
  if (this.WindowState==FormWindowState.Minimized)
  {
  this.ShowInTaskba=false;
  }  
 }
 //Close关闭窗口  
 private void NotifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
 {
  this.ShowInTaskba=true;
  this.WindowState=FormWindowState.Normal;
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

返回顶部
顶部