Hallo Gerhard,

bei der Dialog-Scrollbar mit der Verknüpfung des Makros mit den Ereignissen "Maustaste losgelassen" und "Mausbewegung bei Tastendruck" wird auch nur der Zielwert angezeigt (genauso wie "bei justieren"). "Taste losgelassen" funktioniert nicht. Auch die Verknüpfung aller 3 Ereignissen mit dem gleichen Makro führt nur zur Anzeige des Zielwerts/Endwert.

Kannst Du mir die relevanten Befehlszeilen schicken, damit ich mir eine Vorstellung davon machen kann, wie Deine Lösung aussieht?

Grüße
Gerhard



Am 03.11.18 um 11:02 schrieb Gerhard Weydt:
Hallo Gerhard,

ich benutze für die Scrollbar im Dialog die Ereignisse "Taste losgelassen", "Maustaste losgelassen" und "Mausbewegung bei Tastendruck", alle mit dem selben Makro verknüpft, das den Value des Controls (nicht des Models!, aber ich kann dir jetzt nicht sagen, ob das etwas bedeutet) verwendet. Ich zeige nicht Datensätze an, sondern berechne mehrere Werte. Die Anzeige dieser Werte läuft jedenfalls beim Verschieben des Anfassers schön durch. Du kannst das sehen, wenn du die Extension DCM installierst und den Scrollbar für die Sättigung mit der Maus bedienst.

Gruß

Gerhard

Am 02.11.2018 um 06:46 schrieb Gerhard Dittrich:


Im Handbuch LibreOffice 6.1, Kapitel Base,  wird das Beispiel "Scrollbar" behandelt, siehe Beispieldatenbank «Beispiel_Datensatz_scrollbar.odb.
(Vielen Dank den Autoren dafür!)

Die Beispieldatenbank "Beispiel_Datensatz_scrollbar.odb" stellt die Scrollbar für Formulare dar.
Wie lauten die Befehle für Dialogboxen?

1. Methode zum Anzeigen der EXAKTEN POSITIONIERUNG des Scroll-Buttons

IM FORMULAR

    oForm = oEvent.Source
    oScrollField = oForm.getByName("Bildlaufleiste")
    oScrollField.ScrollValueMax = loMax
    oScrollField.ScrollValue = loPos

IM DIALOG

    oDialog.getControl("Bildlaufleiste").Model.ScrollValueMax = loMax
    oDialog.getControl("Bildlaufleiste").Model.ScrollValue = loPos

(soweit so gut)

2. Methode zum  AUSLÖSEN DURCH DIE BILDLAUFLEISTE "Beim Justieren"

(a) IM FORMULAR

    oScrollAction = oEvent.Source
    oForm = oScrollAction.Model.Parent
    loPos = oScrollAction.getValue()

(b) IM DIALOG ???

Verwendet man  loPos = oDialog.getControl("Bildlaufleiste").Model.ScrollValue, dann wird der Wert loPos der Position des Scroll-Button nach Loslassen der Mouse-Taste angezeigt.

Gibt es eine "oScrollAction" analoge Methode für Dialogboxen, so dass die einzelnen Datensätze angezeigt werden beim Durchlaufen der Scrollbar und nicht (nur) der Datensatz beim Beenden des Durchlaufens?








--
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