在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 |