BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Pfad mit Dialog suchen und übernehmen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
mhonline
Beiträge: 24
Registriert: Mi 6. Apr 2011, 18:42

Pfad mit Dialog suchen und übernehmen

Beitrag von mhonline » Do 6. Okt 2022, 20:17

Guten Tag Alle

Kennt jemand ein Makro, mit welchem aus einem Formular heraus ein Dialog zur Auswahl eines Pfades gestartet werden kann, bei dem der vollständige Pfad anschliessend in das dazugehörige Steuerelement/Feld übernommen wird?
Die Geschichte sollte etwa entsprechend dem Dialog bei Grafiken funktionieren, nur eben mit dem Pfad.
Unter Verwendung des Win-Explorers ist dies im Prinzip relativ simpel möglich, allerdings nur, indem die Pfadangabe nach Crtl-V mit Gänsefüßchen ( "LW:\PFAD" ) ausgegeben wird, was irgendwie unbrauchbar ist.

Dies ist übrigens erst der erste Teil der ganzen Frage, denn gern würde ich aus einem Formular heraus auch den umgekehrten Weg gehen, indem über ein Control der Win-Explorer mit eben diesem Pfad geöffnet wird.
Die Idee dahinter ist ganz simpel, ein Arbeitsverzeichnis mit diversen/difusen Daten zu haben, wie es etwa in einem Katalog benötigt wird. Im Gegensatz zu Programmstarts via Dateiaufrufen via Win (ist das die Funktion "shellexecute"?) scheint ein nackter Start des Win-Explorers unter LO bislang wohl nicht möglich.

Tipps sind willkommen
Martin

(LO 7.4.1 unter W10pro/64)

gogo
Beiträge: 1072
Registriert: Sa 5. Feb 2011, 19:07

Re: Pfad mit Dialog suchen und übernehmen

Beitrag von gogo » Fr 7. Okt 2022, 08:43

Benutz' einfach den FilePicker oFileDialog = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
Info/Beispiel dazu hier:
https://stackoverflow.com/questions/324 ... ction-data

... und shellexecute gibts nicht, dafür aber shell() ... ist aber für Parameterrückgaben nicht einfach
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

RobertG
Beiträge: 2732
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Pfad mit Dialog suchen und übernehmen

Beitrag von RobertG » Fr 7. Okt 2022, 10:27

Allerdings: Seit LO 5 können über das grafischen Steuerelement in Verbindung mit einem Textfeld der Tabelle auch die Pfade aller möglichen Dateien übernommen werden. Das beschränkt sich nicht auf Bilder. Das Kontrollfeld zeigt dann nur Bilder und die ersten Seiten eines PDF-Dokumentes an. Bei anderen Inhalten bleibt es leer. Einfach als zweites Feld ein schreibgeschütztes Textfeld für den gleichen Inhalt aus der Tabelle anlegen und der Pfad wird dort auch angezeigt.

Habe ich in https://wiki.documentfoundation.org/ima ... en_V74.pdf auch beschrieben. Dort ab S. 60ff.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

mhonline
Beiträge: 24
Registriert: Mi 6. Apr 2011, 18:42

Re: Pfad mit Dialog suchen und übernehmen

Beitrag von mhonline » Sa 8. Okt 2022, 15:16

Moin

Danke schon mal für das lesen. Irgendwie hab ich das Problem aber offensichtlich unzureichend beschrieben.
Die inspiration kam von der Beispieldatenbank von Robert namens "Beispiel_Dateien_einbinden_..", in welcher Makros zwar (ebenso wie im Link von Gogo) der Pfad als Variable vorhanden ist, aber nicht speziell sondern nur über den Umweg einer ausgewählten Datei in diesem Pfad gewählt werden kann. Daraus etwas anderes zu basteln, ist mir zu kompliziert, dafür verstehe ich zu wenig vom Programmieren, weswegen ich die Lösungssuche zu Teil 1 (Pfad==>Feld) aufgebe.

Allerdings scheint der dort aufgezeigte Weg über shellexecute (bzw. SystemShellExecute) eine gangbare Lösung zu Teil 2 zu sein. denn mit einem Batch der Form " explorer "pfad" " ergibt sich genau das beabsichtigte Ergebnis, wobei in dem Falle tatsächlich die Verwendung des von Windows zurückgegebenen Pfadnamens in Gänsefüßchen für Pfade mit Sonder- oder Leerzeichen Sinn macht.
Problem:
-- Wie bastelt man sich in LO zur Laufzeit eine Datei xy.bat, die eben genau diesen Inhalt hat, nämlich " explorer "FeldInhalt" " bzw. explorer "Pfad"

fragt
Martin

Wanderer
Beiträge: 895
Registriert: Di 11. Feb 2014, 20:03
Wohnort: Berlin

Re: Pfad mit Dialog suchen und übernehmen

Beitrag von Wanderer » So 9. Okt 2022, 08:49

mhonline hat geschrieben:
Sa 8. Okt 2022, 15:16
... nur über den Umweg einer ausgewählten Datei in diesem Pfad gewählt werden kann. Daraus etwas anderes zu basteln, ist mir zu kompliziert, dafür verstehe ich zu wenig vom Programmieren, ...
Eigentlich einfach, wenn man bei Google kurz prüft, ob es evtl auch was mit FolderPicker gibt:

https://ask.libreoffice.org/t/using-sta ... ry/29195/2
LO 6.0.7 (32Bit) Win8.1 Pro 32 Bit/ LO 6.3.2 Win10 64Bit / LO 6.0.7 Win7 Pro 64 Bit

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten