在NET中如果是ToolStrip1工具栏,默认的气泡提示即是该按钮的text属性值。
如果是其他控件呢?不如说TextBox控件,以下代码可实现:
Dim toolTip1 As New ToolTip()
toolTip1.AutoPopDelay = 5000 '显示停留5秒
toolTip1.InitialDelay = 1000 '1秒后显示
toolTip1.ReshowDelay = 500 '从一个控件移到另一个控件0.5秒后显示
toolTip1.ShowAlways = True '在窗口不活动时也显示
ToolTip1.SetToolTip(TextBox1, "提示内容")
进一步,如果控件数量比较多,以下递归方法看可通过设置控件的Tag属性来产生气泡提示而不必一个一个手工绑定。(在窗体上画一个Button1,TextBox1,Panel1,再在Panel1上画一个Button2)
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
''''''''''''''''''''''''''
'此句必须放在 toolTip1 绑定控件前
TextBox1.Tag = "请输入数字" & vbCrLf & "0123456789"
Button1.Tag = "按钮"
Button2.Tag = "海洋"
Panel1.Tag = "pannnnnnnnnnnnn"
''''''''''''''''''''''''''
BindingControlToToolTip(Me)
End Sub
Sub BindingControlToToolTip(ByVal parent As Control)
Dim toolTip1 As New ToolTip()
toolTip1.AutoPopDelay = 5000 '显示停留5秒
toolTip1.InitialDelay = 1000 '1秒后显示
toolTip1.ReshowDelay = 500 '从一个控件移到另一个控件0.5秒后显示
toolTip1.ShowAlways = True '在窗口不活动时也显示
For Each ctrl As Control In parent.Controls
toolTip1.SetToolTip(ctrl, ctrl.Tag)
'递归调用过程,保证子窗体上(如panel)的空间也绑定。
BindingControlToToolTip(ctrl)
Next
End Sub