奇怪,我的MouseDown事件没用了??

longzu1984 2006-03-24 08:40:35
做一个需要在窗体上按下后,移动鼠标窗体会跟着的功能,本来还好好的,在测试时可以用,后来不知道为什么就不成了,实现这个功能用的三个事件,MoustDown,MouseUp,MouseMove,我测试了一下,就是在里面加上MessageBox.show()看看到底哪里出了错了,结果发现MouseDown事件没用了,其他两个事件都可以....我真是百思不解了,事件都加进去了,而且这个也没有改过

大侠帮我看看,最有可能是哪里出了错来
...全文
152 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
longzu1984 2006-03-24
  • 打赏
  • 举报
回复
嗯,不是我的代码错误了,而是那个事件不起作用了,比如在MouseDown事件中,我只加了一个MessageBox.Show(),结果什么东西也没有....
ghtyan 2006-03-24
  • 打赏
  • 举报
回复
private bool IsDown = false;
private Size size = new Size(0,0);
private void pictureBox1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
this.IsDown = true;
this.size.Width = e.X;
this.size.Height = e.Y;
}

private void pictureBox1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
{
this.IsDown =false;
}

private void pictureBox1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
if (this.IsDown)
{
this.Left += e.X - this.size.Width;
this.Top += e.Y - this.size.Height;
}
}
diandian82 2006-03-24
  • 打赏
  • 举报
回复
你看看事件和你的方法关联上没有?

this.button1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.button1_MouseDown);
这句话有么?
lookatliu 2006-03-24
  • 打赏
  • 举报
回复
你这句什么时候能触发阿??
我没看出来……
if (this.IsDown)
{
this.Left += e.X - this.size.Width;
this.Top += e.Y - this.size.Height;
}
lookatliu 2006-03-24
  • 打赏
  • 举报
回复
你MessageBox.Show()后,pictureBox1_MouseUp就不触发了……
longzu1984 2006-03-24
  • 打赏
  • 举报
回复
...再顶

111,119

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧