c# 鼠标移动带边框的pictureBox
2008-07-24 17:15
225 查看
Point orignalPoint = new Point();//记录鼠标按下时的坐标
Rectangle orignalPosition;//记录边框
private void pictureBox_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button != MouseButtons.Left) return;
//记录鼠标按下时的坐标
orignalPoint =e.Location;
//生成边框
orignalPosition = new Rectangle(0, 0, ((Control)sender).Width, ((Control)sender).Height);
//设置边框起始位置
orignalPosition.Offset(this.PointToScreen(((Control)sender).Location));
//画边框
ControlPaint.DrawReversibleFrame(orignalPosition, Color.Blue, FrameStyle.Thick);
}
private void pictureBox_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button != MouseButtons.Left) return;
//移动边框
orignalPosition.Offset(e.X - orignalPoint.X, e.Y - orignalPoint.Y);
ControlPaint.DrawReversibleFrame(orignalPosition, Color.Blue, FrameStyle.Thick);
//移动图片
//当前点的横坐标减鼠标按下时的横坐标
this.Left+=e.X-orignalPoint.X;
//当前点的纵坐标减鼠标按下时的纵坐标
this.Top += e.Y - orignalPoint.Y;
}
private void pictureBox_MouseUp(object sender, MouseEventArgs e)
{
ControlPaint.DrawReversibleFrame(orignalPosition, Color.Blue, FrameStyle.Thick);
}
Rectangle orignalPosition;//记录边框
private void pictureBox_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button != MouseButtons.Left) return;
//记录鼠标按下时的坐标
orignalPoint =e.Location;
//生成边框
orignalPosition = new Rectangle(0, 0, ((Control)sender).Width, ((Control)sender).Height);
//设置边框起始位置
orignalPosition.Offset(this.PointToScreen(((Control)sender).Location));
//画边框
ControlPaint.DrawReversibleFrame(orignalPosition, Color.Blue, FrameStyle.Thick);
}
private void pictureBox_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button != MouseButtons.Left) return;
//移动边框
orignalPosition.Offset(e.X - orignalPoint.X, e.Y - orignalPoint.Y);
ControlPaint.DrawReversibleFrame(orignalPosition, Color.Blue, FrameStyle.Thick);
//移动图片
//当前点的横坐标减鼠标按下时的横坐标
this.Left+=e.X-orignalPoint.X;
//当前点的纵坐标减鼠标按下时的纵坐标
this.Top += e.Y - orignalPoint.Y;
}
private void pictureBox_MouseUp(object sender, MouseEventArgs e)
{
ControlPaint.DrawReversibleFrame(orignalPosition, Color.Blue, FrameStyle.Thick);
}
相关文章推荐
- C# winform 无边框窗体鼠标点击移动事件
- C# form窗体无边框后,鼠标移动窗体
- C#WinForm无边框窗体移动方法、模仿鼠标单击标题栏移动窗体位置
- C#鼠标移动到Button上后改变边框颜色
- c# 无边框窗体鼠标点击移动方法
- C# GDI绘制矩形框,鼠标左键拖动可移动矩形框,滚轮放大缩小矩形框
- C# 鼠标移动到按钮时显示提示信息
- C#中用鼠标移动页面功能的实现
- C# 模拟鼠标移动与点击
- 在运行时通过鼠标拖动移动控件位置(c#)
- C#无边框窗体移动的三种方法
- 在运行时通过鼠标拖动移动控件位置(c#)
- C#鼠标任意拖动PictureBox等控件(使用API ReleaseCapture SendMessage)
- 无边框窗体随鼠标移动
- C#实现无边框窗体移动方法
- c#中通过设置钩子监视鼠标移动
- C#无边框移动
- JQuery实现鼠标移动到图片上显示边框效果
- c#实现随鼠标移动窗体
- c#中通过设置钩子监视鼠标移动