效果如下:
具体实现代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication4
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int deltX = 10;
int deltY = 8;
private void timer1_Tick(object sender, EventArgs e)
{
this.label1.Left += deltX;
this.label1.Top += deltY;
if (this.label1.Top < 0 || this.label1.Top + this.label1.Height > this.Height)
deltY = -deltY;
if (this.label1.Left < 0 || this.label1.Left + this.label1.Width > this.Width)
deltX = -deltX;
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
Application.Exit();
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
//Application.Exit();
}
}
}
原理:
使用 timer定时器,固定时间触发事件移动,每次移动一段X,Y,
使用两个条件判断,在碰到边界时,返回。。