Geplant: Hilfefunktion durch darüberfahren mit der Maus - Denkfehler?

25/11/2008 - 20:18 von Joachim Zaich | Report spam
Hallo,

ich möchte, wenn eingeschaltet, Informationen über einen Button, ein
Textfeld usw. anzeigen wenn der Mauszeiger sich über dem Objekt befindet.

Leider làuft mein Code nicht, da ein Feld das in einem Container ist, .left
= 0 übergibt. Auch habe ich keinen Punkt gefunden, zu erkennen ob ein
Element sichtbar ist und nicht in einem Tab verdeckt ist. Das RTF-Feld z.B.
wird trotzdem gefunden.
Soweit meine Idee, hier der Testcode:

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single,
Y As Single)
Dim Control As Control

For Each Control In Me.Controls
Select Case TypeName(Control)
Case "CheckBox", "ComboBox", "CommandButton", "DirListBox",
"DriveListBox", "FileListBox", _
"TextBox", "Label", "OptionButton", "Frame", "HScrollBar",
"Image", "ListBox", _
"Node", "Nodes", "PictureBox", "RichTextBox", "Slider",
"SSTab", "TabStops", _
"VScrollBar", "PictureBox"

If X > Control.Left Then
' Einzeln um Zeit zu sparen
If X < Control.Left + Control.Width Then
If Y > Control.Top Then
If Y < Control.Top + Control.Height Then
Me.Caption = Control.Name & " <-"
' Hier sollte dann mal der Hilfstext ausgegeben werden
End If
End If
End If
End If

Case "Line", "Timer", "Shape"
' Die nicht
Case Else
Debug.Print TypeName(Control)
End Select
 

Lesen sie die antworten

#1 Thorsten Doerfler
25/11/2008 - 21:56 | Warnen spam
Joachim Zaich schrieb:
ich möchte, wenn eingeschaltet, Informationen über einen Button, ein
Textfeld usw. anzeigen wenn der Mauszeiger sich über dem Objekt befindet.



Von den "altmodischen" ToolTipText(en) hàltst Du nichts?

Thorsten Dörfler
Microsoft MVP Visual Basic

vb-hellfire visual basic faq | vb-hellfire - einfach anders
http://vb-faq.de/ | http://www.vb-hellfire.de/

Ähnliche fragen