VB-Homepage Tipp 314 |
über welcher Zelle in einem MSFlexGrid befindet sich die Maus |
Das MouseMove Ereignis ist ja gleichzusetzen mit dem
MouseOver in der Internetprogrammierung, darüber läßt sich also in einem Control
feststellen, ob sich die Maus darüber befindet. In diesem Ereignis sind auch ständig die X-Y Koordinaten der Maus abfragbar. Unser Tipp wertet nun diese Koordinaten aus und vergleicht sie mit dem Gridcontrol, um die Zelle zu ermitteln, über welcher die Maus momentan steht. Für ein Demoprojekt benötigen Sie neben einer Form, natürlich ein MS Flexgrid (MSFLXGRD.OCX) Control, um beim Test auch etwas angezeigt zu bekommen, müßten Sie diesem noch ein paar Werte spendieren und außerdem noch ein Label Objekt (Label1), der uns den Wert der Zelle anzeigen soll, über dem momentan die Maus steht. Alles, was Sie an Deklaration benötigen ist in der nachfolgende Funktion enthalten. Private Function GetRowColTwips(Grid As Object, x As Single, y As Single, colnum As Integer, rownum As Integer) Dim Count As
Integer colnum = -1 With Grid For Count = minCol To .Cols - 1 Zeile = rownum End Function Der Aufruf der Funktion erfolgt im |
Tipp-Download |
Quelle : Chris Willetts / cdjw100@york.ac.uk |