繁体   English   中英

如何使ToolTip跟随鼠标?

[英]How to make the ToolTip follow the mouse?

我希望工具提示跟随我的鼠标在一个控件上移动。 例如,让我们进行一个小组讨论。 当鼠标位置位于Rectangle(100,100,50,50)内部时,我希望ToolTip可见并且始终在鼠标的右下方。 当它在此矩形之外时,我希望工具提示不可见。

我试图这样做:

ToolTip toolTip = new ToolTip();
int x, y;

protected override void OnMouseMove(MouseEventArgs e)
{
      if ((x == e.X) && (y == e.Y) && (new Rectangle(100, 100, 50, 50).Contains(e.Location))
          toolTip.Show("some text", this, x + 10, y + 10);
      else
      {
          x = e.X;
          y = e.Y;
          toolTip.Hide(this);
      }
}

但是有一个问题-当我的toolTip出现时-它得到了焦点,然后OnMouseMove(MouseEventArgs e)不再起作用。 我试图将焦点放在该功能结尾处的面板上,但是它不起作用。 我还尝试了OnMouseHover的一些技巧,但效果相同。

请勿为此使用工具提示-如果绘制了面板,请绘制自己的工具提示; 否则,请使用Panel并从两者响应MouseMove事件,但忽略e.Location ,而是使用System.Windows.Forms.Cursor.PositionPointToClient

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM