Date: prev next · Thread: first prev next last
2022 Archives by date, by thread · List index


Hi Thomas,

nein ich habe keine Fehlermeldungen unterdrückt. Hab auch einfach mal
alles auskommentiert, außer den Print. Aber der kommt auch nicht. Hast
du denn mal einen Listener in einem Dialog genutzt, der über excute
ausgeführt wird? Mich macht halt stutzig, dass disposing ausgeführt
wird, wenn ich den Dialog beende. Hab ebend auch mal den Dialog über
setVisible mit wait ausgeführt. Das ändert aber nichts.

Vielleicht fällt mir morgen noch was ein, sonst werde ich mal den Weg
versuchen, den Robert im Handbuch beschreibt.

Viele Grüße

Stefan

Am 09.09.2022 um 16:41 schrieb Thomas Krumbein:
Hey Stefan,

vielleicht liegt der Fehler ganz woanders? Hast Du evt im Makro
irgendwo Basic-Fehlermeldungen unterdrückt?

so etwas wie .. on error resume next  oder so?

In dem Code

Sub sel_change_selectionChanged(vEvent)
    Dim vCurrentSelection As Object
       vCurrentSelection =  vEvent.source.CurrentRow
       MsgBox "Selected Row = " & vEvent.source.CurrentRow
print 27
End Sub

zumindest dürfte das mit dem vCurrentSelection nicht funktionieren.
Die Variable ist als Objekt definiert, die Zuweisung liefert aber
einen Long-Wert zurück. Sollte eigentlich ne Basic-Fehler ergeben und
somit einen Stop des Makros.

Kommentiere mal die beiden Zeilen "Dim..." und "vCurrentSelection...."
aus. Die Zeile mit der msgbox müsste eigentlich funktioniern.

Viele Grüße

Thomas


Am 09.09.2022 um 10:30 schrieb Stefan Deutsch:
Hi Thomas,

ich hab es sowohl als Global als auch mit Public probiert. Sie stehen
auch als erstes in dem Modul. Das kuriose ist ja, dass der disposing
anschlägt, wenn ich den Dialog über das Kreuz schließe. Ich hab Präfix
auch nochmal geändert in myselChange_. Das sollte wirklich eindeutig
sein. Werde später nochmal eine andere LiBo-Version ausprobieren, ob es
daran liegt.

Viele Grüße

Stefan
[..]

Am 08.09.2022 um 20:50 schrieb Stefan Deutsch:
Hi Thomas,

Hier mal die letzten Zeilen des Makros, in dem das GridControl mit
Inhalt gefüllt wird. Soweit ich das sehe, hab ich das vom Ablauf
gemacht
wie du in deinem Beispiel.

    oGridControl =
createUnoService("com.sun.star.awt.grid.UnoControlGrid")
    oGridControl.setModel(oGridModel)
    oKommDia.addControl("GridAnzeigeKommission", oGridControl)
    oGridDataModel =
oKommDia.Model.getByName("GridAnzeigeKommission").GridDataModel

'Run this macro to start event intercepting
      sPrefix = "sel_change_"
      sService = "com.sun.star.awt.grid.XGridSelectionListener"

  'Create a listener to intercept the selection change events
      vSelChangeListener = CreateUnoListener(sPrefix, sService)

  'Register the listener to the document controller
oGridControl.addSelectionListener(vSelChangeListener)

    iData = oGridDataModel.getCellData(3, iRowAktuell)
    oKommDia.getControl("nf_ausgefasst").Value = iData
    oKommDia.Controls(7).deselectAllRows
    oKommDia.Controls(7).selectRow(iRowAktuell)
    oKommDia.execute()
End Sub

Und hier die beiden Subs. disposing wird auch ausgeführt, wenn
ich den
Dialog über das X beende.

Sub sel_change_disposing(vEvent)
print 21
End Sub

Sub sel_change_selectionChanged(vEvent)
    Dim vCurrentSelection As Object
       vCurrentSelection =  vEvent.source.CurrentRow
       MsgBox "Selected Row = " & vEvent.source.CurrentRow
print 27
End Sub
[..]


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

--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
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

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.