Hallo,

marcushoffm...@web.de schrieb:
> Wie müssten denn die Parameter für ein Makro aussehen, damit
> nach dem Öffnen
> des MSWord-Dokuments auch der Sprung zu einem Sprungziel im
> MSWord-Dokument
> (evtl. Textmarke) funktioniert?
>
> Hattest du eine konkrete Ausführung im Sinn oder nur
> allgemein die Idee ein,
> wie auch immer geartetes Makro zu verwenden?

Ich hatte natürlich eine konkrete Ausführung im Sinn, ich hatte das doch
beschrieben.

WEnn Du in Writer einen normalen Hyperlink erzeugst, kannst Du diesem
Hyperlink auch (zusätzlich) ein Makro zuweisen (Format-Zeichen Register
"Hyperlink" und dort Ereignis "Hyperlink auslösen").
Das dort zugewiesene Makro muß enthalten eine Routine zum Öffnen der
verlinkten DAtei und den Sprung zur Textmarke. Routine zur verlinkten
dAtei geht wie hier beschrieben:
http://www.dannenhoefer.de/faqstarbasic/WiekannmaneineDateiffnen..html

und Sprung zur Textmarke entsprechend angelehnt an Gleiche Quelle
Abschnitte 8.1.7, 8.1.12, 8.1.13

Für die Routinen muß der INhalt des Hyperlinks bekannt sein, der sich
jedoch aus dem ViewCursor lesen lässt, da im Moment des manuellen
Auslösens des Hyperlinks der ViewCursor zwangsläufig in den Hyperlink
gesetzt wird womit sich dann
der String lesen lässt der wie folgt aufgebaut ist:
<Dateipfad und Name>#<Name der Textmarke>

woraus sich die nötigen Angaben für Dateipfad und Name und Name der
Textmarke ermitteln lassen, da "#" ein eideutiger Trenner ist.

Nun gilt es lediglich noch zu verhindern das der Hyperlink (zusätzlich
zum Makro) ausgelöst wird, was sich , wuie ich bereits schrieb,
pragmatisch damit lösen lässt das man einen nicht häufig benutzten
Linktyp dafür 'ausnutzt', z.B., "News".
Unter Windows ist das einstellbar unter Systemsteuerung-OrdnerOptionen
Dateityp namens "URL:News-Protokoll", dort kann man, um quasi eine
Aktion zu verhindern ein Programm zuweisen was, im wörtlichen Sinne,
garnichts tut. Wozu ich mir hier testweise eine Standalone-EXE aus einem
Quelltext der nur eine Kommentarzeile (und keinerlei ausführbaren Code)
enthält, mit TurboPL2 kompilliert habe. Der 'Nachfolger' von TurboPL2
ist RapidBatch:
http://www.jmksf.de/rb5/index.php?lang=0

aber auch jeglicher anderer denkbarer Compiler erfüllt letztlich den
gleichen Zweck, es kommt ja nur darauf an eine Standalone-Exe zu
erzeugen die 'Nichts' tut um eine tatsächliche Aktion für einen
"News"_link zu unterdrücken.
Die so kompillierte EXe nun einfach dem open-Vorgang für den Datei-typ
"URL:News-Protokoll" zuweisen und es funktioniert wie gewünscht.

Somit ist dann alles beisammen und es muß jeweils nur ein Link des Typs
"news" im odt-Dokument angelegt werden, mit den Eigenschaften:

Empfänger -->  <Dateipfad und Name>#<Name der Textmarke>
text --> der sichtbare Text

und zusätzlich das Makro zugewiesen werden.


Ob das Ganze nun der sinnvollste Weg ist, weiß ich nicht, da ich die
genauen Anforderungen und Begleitumstände im Detail nicht kenne - ich
weiß jedoch das der bechriebene Weg universell ist, halbwegs bequem
handhabbar und das er funktioniert.



Gruß
Jörg


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org

Antwort per Email an