如何使用Windows窗体在按钮上显示工具提示?


当前回答

基于DaveK的回答,我创建了一个控件扩展:

public static void SetToolTip(this Control control, string txt)
{
    new ToolTip().SetToolTip(control, txt);
}

然后你可以用一行来设置任何控件的工具提示:

this.MyButton.SetToolTip("Hello world");

其他回答

您可以使用ToolTip类:

为控件创建工具提示

例子:

private void Form1_Load(object sender, System.EventArgs e)
{
    System.Windows.Forms.ToolTip ToolTip1 = new System.Windows.Forms.ToolTip();
    ToolTip1.SetToolTip(this.Button1, "Hello");
}

我已经做了很酷的工具提示 代码是:

1.初始化工具提示对象

2.当你想要展示你的创造力时或在哪里调用对象

Ex-  
ToolTip t=new ToolTip();
t.setToolTip(textBoxName,"write your message here what tp you want to show up");
private void Form1_Load(object sender, System.EventArgs e)
{
    ToolTip toolTip1 = new ToolTip();
    toolTip1.AutoPopDelay = 5000;
    toolTip1.InitialDelay = 1000;
    toolTip1.ReshowDelay = 500;
    toolTip1.ShowAlways = true;
    toolTip1.SetToolTip(this.button1, "My button1");
    toolTip1.SetToolTip(this.checkBox1, "My checkBox1");
}

基于DaveK的回答,我创建了一个控件扩展:

public static void SetToolTip(this Control control, string txt)
{
    new ToolTip().SetToolTip(control, txt);
}

然后你可以用一行来设置任何控件的工具提示:

this.MyButton.SetToolTip("Hello world");

当然,只需处理鼠标悬停事件并告诉它显示工具提示。 T是一个在全局函数中定义的工具提示,或者在构造函数中使用:

ToolTip t = new ToolTip();

然后是事件处理程序:

private void control_MouseHover(object sender, EventArgs e)
{
  t.Show("Text", (Control)sender);
}