Im Microsoft FlexGrid-Control wird eine Zelle bekanntlich nur dann selektiert, wenn der User mit der linken Maustaste auf die Zelle klickt. Manchmal soll eine Zelle aber auch per Rechtsklick zur aktiven Zelle werden, um z.B. dann ein PopUp-Menü anzuzeigen. Nachfolgender Code verrät, wie sich die Zelle ermitteln und selektieren lässt, wenn der User auf diese mit der rechten Maustaste klickt. Private Sub MSFlexGrid1_MouseUp(Button As Integer, _ Shift As Integer, x As Single, y As Single) ' Rechtsklick? If Button = vbRightButton Then Dim nRow As Long Dim nCol As Long Dim nRowCur As Long Dim nColCur As Long With MSFlexGrid1 ' aktuelle Zelle "merken" nRowCur = .Row nColCur = .Col ' Zelle ermitteln nRow = .MouseRow nCol = .MouseCol ' Erfolgte der Mausklick auf eine existierende ' Zelle im Grid? If nRow >= 0 And nCol >= 0 Then ' Zelle zur aktiven Zelle machen (selektieren) .Row = nRow .Col = nCol If x >= .CellLeft And x <= .CellLeft + .CellWidth And _ y >= .CellTop And y <= .CellTop + .CellHeight Then ' Beispiel: PopUp-Menü anzeigen PopUpMenu myPopUp Else ' ursprüngliche Zelle wieder selektieren .Row = nRowCur .Col = nColCur End If End If End With End If End Sub Dieser Tipp wurde bereits 17.589 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 ![]() Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats Heinz Prelle Datei-Mehrfachauswahl an eine ListBox übergeben Dieser Tipp zeigt, wie Sie über den Windows-CommonDialog eine Mehrfach-Dateiauswal realisieren... Neu! sevPopUp 2.0 ![]() Dynamische Kontextmenüs! Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... |
||||||||||||||||
|
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |
|||||||||||||||||


Zellenauswahl im FlexGrid per Rechtsklick


