c# - 如何检查光标位置是否在windows窗体中的图表控件之外?
问题描述
我tooltip
在MS chart
. 当从图表控件移动到其他控件或窗体可用空间时,tooltip
不会被隐藏。
如何检查光标位置是否在windows窗体中的图表控件之外?
我尝试了下面的代码,它对我不起作用。
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
if (!chart.ClientRectangle.Contains(chart.PointToClient(new Point(e.X,e.Y))))
{
if (ToolTip != null)
ToolTip.Hide(chart);
}
}
我放了跟踪并检查了,如果我从图表控件移动以形成可用空间,则事件正在触发,只有当从图表移动到其他控件时,才Form1_MouseMove
不会被调用。
如何解决我的问题?
解决方案
尝试在您的目标控件上处理MouseEnter
和MouseLeave
事件(您的案例中的图表,我的按钮)。
using System.Drawing;
using System.Windows.Forms;
namespace WindowsFormsApp
{
public partial class Form1 : Form
{
private const string mouseIsOver = "Mouse is over";
private const string mouseIsOutside = "Mouse is outside";
public Form1()
{
InitializeComponent();
var button = new Button { Text = mouseIsOutside, AutoSize = true, Location = new Point(10, 10) };
button.MouseEnter += (sender, e) => button.Text = mouseIsOver;
button.MouseLeave += (sender, e) => button.Text = mouseIsOutside;
this.Controls.Add(button);
}
}
}
推荐阅读
- angular - 使铯全屏
- typescript - 基于参数中的嵌套键返回的函数的打字稿定义
- javascript - 在nodejs中获取最新数据时面临问题
- vba - 在 Access VBA 中,如何保持文本框处于活动状态并在 Enter 键后选择其所有内容
- python - 当条件为真时如何打破?
- .net - 使用 PDFCreator 在 VB .NET 函数中将 docx 转换为 pdf,但它不起作用
- java - 如果计数器达到特定数字,如何向按钮添加声音?
- powershell - 团队:Invoke-Webrequest 向团队发送 base64 字符串 (png)
- python - 遍历numpy数组以在字典中使用
- python - Python 将回车视为换行符。我能做些什么呢?