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


当前回答

使用表单设计器:

将工具提示控件从工具箱拖到窗体上。 选择要在其上显示工具提示的控件的属性。 找到属性'ToolTip on toolTip1'(如果您更改了它的默认名称,该名称可能不是toolTip1)。 将属性的文本设置为要显示的工具提示文本。

你也可以使用下面的调用以编程方式设置工具提示:

this.toolTip1.SetToolTip(this.targetControl, "My Tool Tip");

其他回答

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");
}

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

ToolTip t = new ToolTip();

然后是事件处理程序:

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

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

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

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

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

ToolTip是一个WinForms控件,用于在单个表单中显示多个元素的工具提示。

假设你的按钮叫MyButton。

添加一个工具提示控件(在普通 控件 工具箱)到您的窗体。 给它一个 名称-说MyToolTip 设置MyButton的“Tooltip on MyToolTip”属性(在Misc下) 按钮属性网格)到鼠标悬停在其上时应该出现的文本。

当光标悬停在按钮上时,工具提示将自动出现,但如果需要以编程方式显示它,请调用

MyToolTip.Show("Tooltip text goes here", MyButton);

在代码中显示工具提示,和

MyToolTip.Hide(MyButton);

让它再次消失。

使用表单设计器:

将工具提示控件从工具箱拖到窗体上。 选择要在其上显示工具提示的控件的属性。 找到属性'ToolTip on toolTip1'(如果您更改了它的默认名称,该名称可能不是toolTip1)。 将属性的文本设置为要显示的工具提示文本。

你也可以使用下面的调用以编程方式设置工具提示:

this.toolTip1.SetToolTip(this.targetControl, "My Tool Tip");