C# 鼠标悬停时不应显示工具提示
我有一个带有相关工具提示的picturebox,我想在单击picturebox时显示它,但鼠标悬停在上面时不显示。我尝试为picturebox创建一个空鼠标悬停事件,但工具提示仍然显示:C# 鼠标悬停时不应显示工具提示,c#,winforms,C#,Winforms,我有一个带有相关工具提示的picturebox,我想在单击picturebox时显示它,但鼠标悬停在上面时不显示。我尝试为picturebox创建一个空鼠标悬停事件,但工具提示仍然显示: private void pictureBox3_MouseHover(object sender, EventArgs e) { } private void pictureBox3_Click(object sender, EventArgs e) {
private void pictureBox3_MouseHover(object sender, EventArgs e)
{
}
private void pictureBox3_Click(object sender, EventArgs e)
{
int durationMilliseconds = 30000;
toolTip1.Show(toolTip1.GetToolTip(pictureBox3), pictureBox3, durationMilliseconds);
}
如何才能使工具提示不显示在鼠标上方?不要为pictureBox3设置工具提示(将其删除)。只需展示一个:
// On class scope to have access from MouseEnter
ToolTip tt = new ToolTip();
private void pictureBox3_Click(object sender, EventArgs e)
{
int durationMilliseconds = 30000;
tt.IsBalloon = true;
tt.InitialDelay = 0;
tt.Show("tooltip text", pictureBox3, durationMilliseconds);
}
要防止永久设置工具提示,请将事件处理程序添加到MouseEnter
的picturebox中:
private void pictureBox3_MouseEnter(object sender, EventArgs e)
{
tt.RemoveAll();
}
不要为pictureBox3设置工具提示(将其删除)。只需展示一个:
// On class scope to have access from MouseEnter
ToolTip tt = new ToolTip();
private void pictureBox3_Click(object sender, EventArgs e)
{
int durationMilliseconds = 30000;
tt.IsBalloon = true;
tt.InitialDelay = 0;
tt.Show("tooltip text", pictureBox3, durationMilliseconds);
}
要防止永久设置工具提示,请将事件处理程序添加到MouseEnter
的picturebox中:
private void pictureBox3_MouseEnter(object sender, EventArgs e)
{
tt.RemoveAll();
}
事件可以有多个绑定到它们的方法。尝试将
e.Handled=true
添加到悬停事件。通过这种方式,事件被标记为已处理,并且不会调用该事件的后续方法。事件可以有多个绑定到它们的方法。尝试将e.Handled=true
添加到悬停事件。这样,事件将标记为已处理,并且不会调用该事件的后续方法。谢谢!但单击后,悬停事件将再次激活。(我已经删除了原来的工具提示)我已经添加了一种方法来防止这种情况再次感谢您的帮助!谢谢但单击后,悬停事件将再次激活。(我已经删除了原来的工具提示)我已经添加了一种方法来防止这种情况再次感谢您的帮助!