WinFrom中怎样判断鼠标释放?
WinFrom中怎样判断鼠标释放? 我在treeview的MouseEnter事件里进行判断,当鼠标释放的时候再执行下面的代码,该怎样做????
急!
------解决方案--------------------我发觉回你的贴根本就是对牛弹琴
MouseUp 在鼠标指针在控件上并释放鼠标键时发生。 (继承自 Control。)
Control.MouseUp 事件
------解决方案-------------------- public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
this.MouseUp += new MouseEventHandler(Form2_MouseUp);
}
void Form2_MouseUp(object sender, MouseEventArgs e)
{
MessageBox.Show("鼠标释放");
}
}
------解决方案--------------------"拖放"有它单独的一套操作方式和数据响应方式.
DragDrop
DragEnter
DragLeave
DragOver是有关拖放的事件。里面可以响应鼠标的位置。
------解决方案--------------------http://hi.baidu.com/lanweijianlong/item/7926b1bc3653fa432aebe393
事件中的 DragEventArgs e 对象具有 x 和 y属性指示鼠标的位置。
------解决方案--------------------请一定按照上面的思路去处理拖放。不要轻易尝试使用鼠标事件等方式自己封装拖放的效果。
拖放本身是非常复杂的过程,所以最好是使用.net封装好的方法、事件和常规的思路:
DoDragDrop发起拖放-〉AllowDrop=True设置响应目标->DragEnter、DragLeave、DragOver事件响应用户拖放中的过程->DragDrop事件处理拖放结果。
如果你决心自己用鼠标事件甚至消息处理拖放,那么也应该先熟练掌握系统的拖放接口,深入理解拖放的思想后才可以。
------解决方案--------------------如果在窗体中的控件上释放鼠标Form_MouseUp不被触发;
所以事件要加到所有控件上;
foreach (Control item in frm.Controls)
{
item.MouseUp += item_MouseUp;
}
item_MouseUp事件含坐标e.X;