Hallo *,

wen es interessiert:

Mit der BasicMakro-Funktion »GetGuiType« kann man abfragen, ob das aktuelle Betriebssystem »Windows« oder »Linux« ist. Man kann nicht abfragen, ob das aktuelle Betriebssystem »MacOS« ist. Zudem wird bezüglich »GetGuiType« angemerkt: »Diese Funktion ist aus Gründen der Abwärtskompatibilität noch vorhanden.« - also nicht unbedingt empfohlen für neue BasicMakros.

In der Hilfe zu »GetGuiType« wird auf die Hilfe »Betriebssystem identifizieren« verwiesen. Diese Hilfe beinhaltet eine »Anleitung«, wie man - unter anderem - mit den Funktionalitäten »isWindows«, »isLinux« und »isMacOS« direkt abfragen kann, welches das aktuelle Betriebssystem ist - eben auch »MacOS« !

Mit dieser Hilfe hatte ich doch einige Verständnisprobleme. Mit nicht wenigen »Try and Error« - Versuchen habe ich dann, so glaube ich zumindest, verstanden, was zu tun ist. Deshalb hier ein paar Verbesserungsvorschläge zu dieser Hilfe:

[1] Die Aussage »Mit einfachen Aufrufen von Python-Makros können Sie die Einschränkungen von LibreOffice Basic überwinden.« ist falsch. Es wird ja beschrieben, wie man das mit BASIC machen kann. Sollte deshalb entfernt werden.

[2] Die Hinweise auf PYTHON sollten entfernt werden. Sie gehören in die PYTHON-Hilfe und verwirren hier nur.

[3] Es wird nicht (wirklich) konkret - und leicht nachvollziehbar - beschrieben, wie man die Verbindung vom »BASIC-Makro« zum »BASIC-Klassenmodul« herstellt - das war übrigens auch mein Hauptproblem :-(( Wenn man sich nicht umfassend mit BasicMakro auskennt, kann man mit dem Begriff »BASIC-Klassenmodul« erst mal nicht viel anfangen. Die Hilfe zu »Option ClassModule« ist da auch nicht wirklich hilfreich: »Diese Anweisung muss in einem Modul vor dem ausführbaren Programmcode eingefügt werden.« Wie fügt man ein Modul vor dem ausführbaren Programmcode ein - also ein Modul einfügen vor dem Programmcode in einem Modul mit Programmcode ? Meine »Erkenntnis« ist da eine andere: Es gibt das Modul (beispielsweise »ClassModulePlatform« mit dem ClassModule-Inhalt) und viele andere Module mit BasicMakroCode. Im jeweiligen BasicMakroCode, der die Funktionalitäten des ClassModule nutzen will, wird mit (beispielsweise) »Dim cmP as New ClassModulePlatform« das ClassModule »ClassModulePlatform« referenziert. Oder habe ich da was falsch verstanden ?

[4] Das Beispiel-BasicMakro »Mit LibreOffice Basic« ist doch etwas rudimentär. Da sollte man schon alle möglichen »Betriebssystem-Identifikations-Möglichkeiten«

isWindows | isLinux | isMacOS | OSName | DirSeparator | PathDelimiter | ComputerName

auflisten, so viel länger wird das Beispiel-BasicMakro dadurch auch nicht - und nicht für die Anzeige »MsgBox« UND »Print« verwenden. Dass es neben »MsgBox« auch noch »Print« gibt, ist in diesem Kontext irrelevant.

[5] Ich habe mal meine »Erkenntnisse« zusammengefasst und dokumentiert - ob das alles so stimmt, keine Ahnung, aber es funktioniert. Hinweise auf Fehler/Denkfehler sind stets willkommen - lasse mich gern belehren :-))

[6] WEB-Link https://magentacloud.de/s/KYLsjXTzY62DCqF Ordner »Betriebssystem identifizieren«

[6.1] ClassModulePlatform.odt (Dokumentation und Möglichkeit zum einfachen Test von »Betriebssystem identifizieren« via MausKlick)
[6.2] ClassModulePlatform.bas (BasicMakroCode)
[6.3] TEST_ClassModulePlatform.bas (BasicMakroCode)

Grüße
aus dem verregneten nasskalten (aktuell 4.3°C) Wittlich
Hans-Werner ;-))






--
Liste abmelden mit E-Mail an: users+unsubscr...@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

Antwort per Email an