Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

VB 6.0 SP6 - Hilfe zu Datagrid

Anwender / 4 Antworten / Baumansicht Nickles

Hallo. Ich möchte bei einem Datagrid mit der rechten Maustaste einen Eintrag auswählen, um über das Kontextmenü eine entsprechende Aktion auszulösen. Wie kann die mit der rechten Maustaste einen Eintrag aktivieren?
Gruss Anwender

bei Antwort benachrichtigen
Borlander Anwender „VB 6.0 SP6 - Hilfe zu Datagrid“
Optionen

Ich gehe einfach mal davon aus das ein Datagrid eine Methode besitzen wird, die die Koordinate(n) des Eintrags unter an einer bestimmten Bildschirmkoordinate zurück gibt. Anschließend könntest Du die Auswahl auf diese Koordinate(n) setzen...

bei Antwort benachrichtigen
Anwender Borlander „Ich gehe einfach mal davon aus das ein Datagrid eine Methode besitzen wird, die...“
Optionen

Hi Borlander.
Ich bekomme über das Klickereignis die Koordinaten, kann aber nicht viel damit anfangen. Könntest du mir ein Beispiel machen?
Gruss Anwender

bei Antwort benachrichtigen
Borlander Anwender „Hi Borlander. Ich bekomme über das Klickereignis die Koordinaten, kann aber...“
Optionen

Mangels VB (ich nutze eher die SDKs von Borland...) kann ich da leider mit keinem Beispiel dienen...
In Delphi haben Grids die Methoden MouseCoord und MouseToCell, ich vermute das die Grinds in VB eine ähnliche Methode besitzen für die Umrechnung von Maus ins Zell-Koordinaten...

Gruß
Borlander

bei Antwort benachrichtigen
Anwender Nachtrag zu: „VB 6.0 SP6 - Hilfe zu Datagrid“
Optionen

Ich habe mittlerweile eine Lösung gefunden:

Private Sub dtgResultat_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbRightButton Then
Dim Row As Long
Dim Col As Long

Row = dtgResultat.RowContaining(Y)
Col = dtgResultat.ColContaining(X)

If Row > -1 Then
If Col > -1 Then
dtgResultat.Bookmark = dtgResultat.RowBookmark(Row)
dtgResultat.Col = Col
End If
End If
PopupMenu mnuPopUp
End If
End Sub

Somit werden mit einem Rechtsklick auf eine Zeile im DataGrid diese ausgewählt und ein PopUpMenü angezeigt.

Gruss Anwender

bei Antwort benachrichtigen