2013-01-24 97 views
0

我用: - Windows 7的
- VS2010 SP1
- 框架4點
- 的WinForms
- MDI父
- StatusStrip中工具條閃爍 - 消隱

我的主要形式是MDI父用StatusStrip包含6個StatusLabels。
當主窗體最大化時,StatusStrip中的工具提示開始閃爍。它只在表單最大化時纔會發生。
我在想如果它與操作系統任務欄和它們之間的空間。
我使用的代碼非常簡單:

Me.lblServer.ToolTipText = myServer.Name 'lblServer is a StatusLabel 

我試圖也通過自己在lblServer_MouseHover設置提示:

ToolTip.SetToolTip(lblServer, myServer.Name) 

但lblServer不是控制,所以這是不可能做到的就這樣。
有沒有人有一個想法如何解決這個問題?

感謝

+1

http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/fba8a82f-a2bc-44b4-be7d-026c4332a56f/ chk –

+0

謝謝。我會試一試 – Nianios

+0

當您在MouseMove事件處理程序中顯示它們並將它們放置在鼠標位置時,Tooltip會快速閃爍。不要把它們放在那裏。 –

回答

0

因此,對於問題的解決方案是:
添加工具提示您的形式。
確保該屬性OwnerDrawn = False。
然後在StatusLabel(lblServer)事件添加以下代碼:

Private Sub lblServer_MouseHover(sender As Object, e As System.EventArgs) Handles lblServer.MouseHover 
    MainToolTip.Show(myServer.Name, myStatusBar, New Point(lblServer.Bounds.Right, lblServer.Bounds.Top - 10)) 
End Sub 
Private Sub lblItems_MouseLeave(sender As Object, e As System.EventArgs) Handles lblServer.MouseLeave 
    ' Hide the tooltips in the StatusStrip 
    MainToolTip.Hide(myStatusBar) 
End Sub 

感謝您的幫助。