Makro

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro

Beitrag von komma4 »

Du kannst mit einer Anweisung einstellen, dass nicht jede Datenaktualisiserung eine Bildschirmaktualisierung auslöst:

Code: Alles auswählen

'  Aktualisierung einschränken
ThisComponent.lockControllers()

' Bearbeitungs-Code hier

'  Aktualisierung freigeben
ThisComponent.unlockControllers()

Noch schneller wird Code ausgeführt, wenn das Dokument komplett im Hintergrund bearbeitet wird....

HTH
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro

Beitrag von komma4 »

setze ThisComponent.lockControllers() am Anfang als erste Anweisung und ThisComponent.unlockControllers() als Letzte am Ende vor END SUB
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro

Beitrag von komma4 »

wie geschrieben:

das Setzen von LockControllers() vermindert nur die Anzahl der Bildschirmaktualisierungen.


versuche mal Folgendes: [Zitat aus viewtopic.php?f=18&t=15397&p=62908]

Code: Alles auswählen

    ' 20071101
    ' Dokument ausblenden, dann anzeigen – geht seit 2.2.x
    oDesktop = StarDesktop

    oDokAnsicht = _
      oDesktop.CurrentComponent.CurrentController.Frame.ContainerWindow
    oDokAnsicht.Visible = FALSE

    msgbox "ausgeblendet - VORSICHT"

    REM ..... weitere Anweisungen

    oDokAnsicht.Visible = TRUE

...und nun setzt Du ein CALL Ueberarbeiten anstelle der msgbox


Zufrieden damit?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Antworten