C# Forms 鼠标悬停不触发控件?
C# Forms Mouse Hover Not firing in controls?
我正尝试在 Mouse_Hover 上为 Button
编写代码
private void Button_MouseHover(object sender, EventArgs e){
Button b = (Button)sender;
toolTip1.Show("Click ME!!", b);
}
但是 toolTip1 没有显示!!
在此之后我尝试在另一个控件中使用 MouseHover 但它不起作用,我尝试使用
MessageBox ,但它甚至没有工作,我仔细检查了 Button (和其他控件)的事件
在属性选项卡中。
您不必为了使用工具提示而连接控件来使用鼠标悬停事件。 MSDN 有一些有用的指导,其本质是“向表单添加工具提示,将工具提示分配给按钮”
这是解决您问题的方法:
public partial class Form1 : Form
{
private System.Windows.Forms.ToolTip toolTip1;
public Form1()
{
InitializeComponent();
this.components = new System.ComponentModel.Container();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
Button myBtn = new Button();
this.Controls.Add(myBtn);
myBtn.Location = new Point(10, 10);
myBtn.MouseEnter += new EventHandler(myBtn_MouseEnter);
myBtn.MouseLeave += new EventHandler(myBtn_MouseLeave);
}
void myBtn_MouseEnter(object sender, EventArgs e)
{
Button btn = (sender as Button);
if (btn != null)
{
this.toolTip1.Show("Hello!!!", btn);
}
}
void myBtn_MouseLeave(object sender, EventArgs e)
{
Button btn = (sender as Button);
if (btn != null)
{
this.toolTip1.Hide(btn);
}
}
我正尝试在 Mouse_Hover 上为 Button
编写代码private void Button_MouseHover(object sender, EventArgs e){
Button b = (Button)sender;
toolTip1.Show("Click ME!!", b);
}
但是 toolTip1 没有显示!!
在此之后我尝试在另一个控件中使用 MouseHover 但它不起作用,我尝试使用 MessageBox ,但它甚至没有工作,我仔细检查了 Button (和其他控件)的事件 在属性选项卡中。
您不必为了使用工具提示而连接控件来使用鼠标悬停事件。 MSDN 有一些有用的指导,其本质是“向表单添加工具提示,将工具提示分配给按钮”
这是解决您问题的方法:
public partial class Form1 : Form
{
private System.Windows.Forms.ToolTip toolTip1;
public Form1()
{
InitializeComponent();
this.components = new System.ComponentModel.Container();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
Button myBtn = new Button();
this.Controls.Add(myBtn);
myBtn.Location = new Point(10, 10);
myBtn.MouseEnter += new EventHandler(myBtn_MouseEnter);
myBtn.MouseLeave += new EventHandler(myBtn_MouseLeave);
}
void myBtn_MouseEnter(object sender, EventArgs e)
{
Button btn = (sender as Button);
if (btn != null)
{
this.toolTip1.Show("Hello!!!", btn);
}
}
void myBtn_MouseLeave(object sender, EventArgs e)
{
Button btn = (sender as Button);
if (btn != null)
{
this.toolTip1.Hide(btn);
}
}