Hey Stefan,

tia, wie meldest Du den Listner denn an? Codeschnipsel?

Er muss am Gridelement angemeldet werden, nachdem das Model zugewiesen wurde:

 oGridControl = createUnoService("com.sun.star.awt.grid.UnoControlGrid")
  oGridControl.setModel(oGridModel)

  oRaDlg.addControl("tab_g1", oGridControl)

  REM Selection Listener erzeugen
  oReAbgLis = CreateUnoListener("ReAblSelection_", "com.sun.star.awt.grid.XGridSelectionListener")

  oGridControl.addSelectionListener(oReAbgLis)

Dies als Beispiel. Du brauchst dann mindestens noch die zwei Funktionen

'********************
' REM Listener Funktionen
Sub ReAblSelection_selectionChanged(oEvt)
    dim aDSatz()

    If bAblFlag Then
      bAblFlag = false
      Exit sub
    End if
    'MsgBox "Markierte Zeile: " & oEvt.source.CurrentRow
    aDSatz = oRaDlg.getControl("tab_g1").model.GridDataModel.getRowData(oRaDlg.getControl("tab_g1").getCurrentRow)
    REM Rechnungsdatendetails lesen und Eintragen
    AbgleichEinzelRechnung(aDSatz())

End Sub

Sub ReAblSelection_disposing(oEvt)
End Sub

Es wird immer die komplette Zeile zurückgeliefert - die weitere Auswahl liegt dann an Dir bzw. dem Code

Vielleicht hilft es :)

Viele Grüße

Thomas



Am 08.09.2022 um 19:49 schrieb Stefan Deutsch:
Guten Abend,

Ich verwende gerade das erste Mal einen Listener in einem Makro. Und
zwar hab ich einen Dialog, das ein GridControl enthält. Dies kann man
zwar einzeichnen, aber muss es ja im Makro zum Leben erwecken. Das
klappt auch soweit. Jetzt wollte ich einen Listener hinzufügen, der auf
SelectionChange anschlägt. Diesen hab ich in dem Objekt angemeldet, das
das UnoControlGrid enthält. Das hat auch geklappt (bzw. es kommt keine
Fehlermeldung). Allerdings wird mein Sub
sel_change_selectionChanged(vEvent) nie ausgelöst, egal, wie viel ich in
der Tabelle rumklicke.

Hat jemand einen HInweis für mich?

Viele Grüße

Stefan


--
Diese E-Mail wurde von Avast-Antivirussoftware auf Viren geprüft.
www.avast.com


--
Liste abmelden mit E-Mail an: [email protected]
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Antwort per Email an