🙏 Helfen Sie mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Calc - Bilschirmaktualisierung EIN- / AUS-schalten

Alles zur Programmierung im LibreOffice.
Antworten
Proma
Beiträge: 37
Registriert: Di 24. Sep 2024, 16:53

Calc - Bilschirmaktualisierung EIN- / AUS-schalten

Beitrag von Proma » Do 9. Jan 2025, 12:32

Hallo liebe Experten,

schon seit geraumer Zeit bin ich auf der Suche nach einer Möglichkeit, das Flackern des Monitors zu unterbinden, das insbesondere dann auftritt, wenn ich mehrere Dateien nach einander öffne und wieder schließe. Zwar habe ich schon die eine oder andere Möglichkeit gefunden, funktioniert hat (zumindest bei mir) noch keine. Die gute Nachricht - es hat auch keine der getesteten Möglichkeiten mein Arbeitsergebnis beeinträchtigt, also keine merkliche Verzögerung, kein Absturz oder ähnliches - es hat einfach nur so wie vorher weiter geflackert.

Vielleicht liegt das Problem in meiner Ausstattung (Win 11, LO 24.2) oder vielleicht auch daran, dass die meisten der getesten Lösungen schon reichlich betagt waren (etwa anno 2005 bis 2012). Nur die letzte, von der ich mir dann schon einiges versprochen hatte, war neueren Datums
Fundstelle: https://ask.libreoffice.org/t/libreoffi ... code/78760

Code: Alles auswählen

Sub ScreenUpdatingOff()
' Schaltet die Bildschirm-Aktualisierung AUS
  With ThisComponent
    .CurrentController.Frame.ContainerWindow.Enable = False
    If Not .isActionLocked Then .AddActionLock
    If Not .hasControllersLocked Then .lockControllers
  End With
End Sub

Sub ScreenUpdatingOn()
' Schaltet die Bildschirm-Aktualisierung EIN	
  With ThisComponent
    If .hasControllersLocked Then .unlockControllers
    If .isActionLocked Then .removeActionLock
    .CurrentController.Frame.ContainerWindow.Enable = True
  End With
End Sub
Leider war auch hier wieder das Ergebnis ernüchternd - egal, welche der beiden If-Zeilen ich - der dortigen Empfehlung folgend - in jeder der Prozeduren auskommentiert oder belassen habe, der Bildschirm hat sich nicht darum geschert und geflackert wie immer.

Jetzt bin ich mit meinem Latein am Ende und hoffe, Ihr könnt mir vielleicht weiterhelfen.

Vielen Dank vorab schon für Eure Unterstützung und liebe Grüße
vom Martin

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Calc - Bilschirmaktualisierung EIN- / AUS-schalten

Beitrag von F3K Total » Do 9. Jan 2025, 17:34

Moin,
... das insbesondere dann auftritt, wenn ich mehrere Dateien nach einander öffne und wieder schließe
Ich nehme mal an, dass du die Dateien öffnest und schließt um um irgendetwas auszulesen bzw. hineinzuschreiben.
Wusstest du, dass man die Dateien dazu garnicht sichtbar öffnen muss?

Code: Alles auswählen

dim args(0) as new com.sun.star.beans.PropertyValue
args(0).Name = "Hidden"
args(0).Value = True
Document = StarDeskTop.loadComponentFromUrl(Pfad zur Datei,"_blank",0,args())
' ... mach was mit Document
Aber nicht vergessen, die Datei danach zu speichern und wieder zu schließen ...
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

Proma
Beiträge: 37
Registriert: Di 24. Sep 2024, 16:53

Re: Calc - Bilschirmaktualisierung EIN- / AUS-schalten

Beitrag von Proma » Do 9. Jan 2025, 20:48

Hallo F3K Total,

vielen Dank, das funktioniert (zumindest auf den ersten Blick) perfekt; vielen Dank dafür!
Vielleicht erinnerst Du Dich, Du hast mir kürzlich schon auf die Sprünge geholfen bei meiner Anfrage bezüglich des Erstellens einer Makro-Liste. Da hast Du mir zu Deiner Antwort eine Beispiel-Mappe angehöngt, die per Makro
Sub S_anlyse_macros(DocumentURL) nacheinander mehrere Dokumente eines Ordners nur zum Lesen öffnet und danach ohne jede Änderung wieder schließt. In dem genannten Makro war - ich glaube in den Code-Zeilen 6 und 7 - die Eigenschaft "Hidden" explicit auf FALSE gesetzt; und ich hatte fälschlicherweise geglaubt,, diese Angabe diene nur dem Zweck, verborgene Dateien nicht zu laden. Offenbar ein Trugschluss. Wo kann ich denn darüber mehr nachlesen?

Aber nochmal zurück zu meiner eigentlichen Frage: Anweisungen wie z.B, ScrennUpdating von Excel oder etwas Vergleichbares gibt es nicht für LibreOffice, weil man das mit der Eigenschaft "Hidden" regeln kann? Bitte entschuldige, wenn ich so dämlich frage, aber seit nahezu 40 Jahren lebe ich jetzt in der Meinung, dass die Eigenschaft "Hidden" (zumindest in Windows) das Anzeigen oder Verbergen einer Datei z.B. im Explorer regelt. Ich glaube, ich brauche mal ein Reset...

Vielen Dank, dass Du Dich mit mir abmühst, danke auch für Deine Geduld und liebe Grüße
vom Martin


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten