public partial class ImageMove : Form
{
public ImageMove()
{
InitializeComponent();
}
int x = 1;//x为1代表水平向右移动,-1代表水平向左移动
int y = 1;//y为1代表垂直向下移动,-1代表垂直向上移动
int move = 5;//每次移动的距离,水平和垂直都是一样的
private void timer1_Tick(object sender, EventArgs e)
{
//根据x值设置图片的位置
if (x == 1)
{
this.pictureBox1.Left += move;
}
else
{
this.pictureBox1.Left -= move;
}
//根据y值设置图片位置
if (y == 1)
{
this.pictureBox1.Top += move;
}
else
{
this.pictureBox1.Top -= move;
}
//水平方向
//撞到右边(减20主要是考虑到窗体有边框)
if(x==1&&this.pictureBox1.Left+this.pictureBox1.Width>=this.Width-20)
{
x = -1;
}
//撞到左边
else if (x == -1 && this.pictureBox1.Left <= 0)
{
x = 1;
}
//垂直方向
//撞到底端(37代表标题栏的高度)
if(y==1&&this.pictureBox1.Top+this.pictureBox1.Height>= this.Height-37)
{
y = -1;
}
//撞到顶端
else if(y==-1&&this.pictureBox1.Top <= 0)
{
y = 1;
}
}
}
相关文章
- 01-02WPF中桌面屏保的制作(主要代码)
- 01-02制作目标在背景中具有移动效果的视频
- 01-02项目之动态图片的制作
- 01-02js实现图片的缩放、移动、旋转、拖拽
- 01-02【奇技淫巧】新的图片加载库,安卓移动开发背景换色
- 01-02关于PC端与手机端随着手指移动图片位置放生变化的拖拽事件
- 01-02基于 Vue 全家桶制作的移动端音乐 WebApp
- 01-02cmd制作可预览的图片木马
- 01-02【移动端】关于图片的大小----怎样保证图片高清
- 01-02制作前端圆形图片相框所不解的问题