Winform中ListView鼠标移动使用toolTip显示信息

今天在做一个酒店管理系统的时候用到了ListView,突然想到是否能够当鼠标移动到某一项的时候给出具体房间的信息呢!

 

首先设置Listview的MouseMove事件

 

1.获取当前坐标的项

 ListViewItem lvi = this.listView.GetItemAt(e.X, e.Y);

 

2.判断是否有选中的项,如果有即显示对应的信息

if(lvi != null)

{

  toolTip.show("Test",listView,new Point(e.X,e.Y),1000);

  toolTip.Active = true;

}

::这时出现了一个问题当鼠标放在某一个项上面的时候,信息在不断的闪速!原因是当鼠标不动的时候也会响应事件,所有加了如下代码就解决了问题

 

先定义一个变量private Point pointView = new Point(0, 0);//位置

然后在显示信息的时候先进行判断

if (pointView.X != e.X || pointView.Y != e.Y)//防止闪烁

{

  toolTip.show("Test",listView,new Point(e.X,e.Y),1000);

  pointView.X = e.X;

  pointView.Y = e.Y;

  toolTip.Active = true;

}else

{

  toolTip.Hide(listView);

  pointView = new Point(e.X,e.Y);

}

 

以上,问题解决!

转载于:https://www.cnblogs.com/Garvan/p/ListView_ToolTip.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值