von Toxitom » Mo, 19.12.2005 17:51
Hey Stefan,
und habe festgestellt das Stardesktop.CurrentComponent geht,
Ja, das geht immer. Nur - in OOo 2.0 ist im Modul Draw (und Impress basiert zum großen Teil darauf) - noch ein Fehler im internen "ThisComponent" - also manchmal ist das einfach "broken", dann funktioniert es nicht und liefert ein falsches Objekt... Daher geht der Aufruf oDoc = thisComponent, oDoc beinhaltet jetzt aber nicht das Objekt des letzten aktiven Dokumentes der Hauptmodule - sondern irgendetwas anderes.
Insofer kommt die Fehlermeldung erst bei der nächsten Zeile, weil wahrscheinlich die Methode "supportsService()" beim aktuellen Objekt dann nicht existiert.
Ansosnten ist die Zeile
Code: Alles auswählen
If oDoc.SupportsService("com.sun.star.presentation.PresentationDocument") Then
durchaus korrekt und definiert auch den Präsentationstyp, also, daran sollte es nicht liegen.
Wie auch immer, obwohl in der Installationsanleitung steht für Versionen ab 1. .. heißt das IMHO korekt nicht bis aufwärts zu beliebigen, sondern nur bis < 2.0. Ich bin nämlich überzeugt die Auitoren haben das nie auf 2.0 angepaßt und meine Erfahrung ist:
Damit hast du sicher recht. Die meisten größern Makroanwendungen, die ich hatte, musste ich auf 2.0 anpassen - es gab eben doch Kleinigkeiten, die geändert (verbessert oder vielleicht auch nur richtiggestellt) wurden. Eine Anpassung ist somit dringend empfehlenswert - nur, auch 2.0 hat noch so einige "Tücken". Also könnte ich verstehen, wenn manche einfach noch ein wenig warten.
Viele Grüße
Thomas
Hey Stefan,
[quote]und habe festgestellt das Stardesktop.CurrentComponent geht, [/quote]
Ja, das geht immer. Nur - in OOo 2.0 ist im Modul Draw (und Impress basiert zum großen Teil darauf) - noch ein Fehler im internen "ThisComponent" - also manchmal ist das einfach "broken", dann funktioniert es nicht und liefert ein falsches Objekt... Daher geht der Aufruf oDoc = thisComponent, oDoc beinhaltet jetzt aber nicht das Objekt des letzten aktiven Dokumentes der Hauptmodule - sondern irgendetwas anderes.
Insofer kommt die Fehlermeldung erst bei der nächsten Zeile, weil wahrscheinlich die Methode "supportsService()" beim aktuellen Objekt dann nicht existiert.
Ansosnten ist die Zeile
[code]If oDoc.SupportsService("com.sun.star.presentation.PresentationDocument") Then
[/code]
durchaus korrekt und definiert auch den Präsentationstyp, also, daran sollte es nicht liegen.
[quote]Wie auch immer, obwohl in der Installationsanleitung steht für Versionen ab 1. .. heißt das IMHO korekt nicht bis aufwärts zu beliebigen, sondern nur bis < 2.0. Ich bin nämlich überzeugt die Auitoren haben das nie auf 2.0 angepaßt und meine Erfahrung ist: [/quote]
Damit hast du sicher recht. Die meisten größern Makroanwendungen, die ich hatte, musste ich auf 2.0 anpassen - es gab eben doch Kleinigkeiten, die geändert (verbessert oder vielleicht auch nur richtiggestellt) wurden. Eine Anpassung ist somit dringend empfehlenswert - nur, auch 2.0 hat noch so einige "Tücken". Also könnte ich verstehen, wenn manche einfach noch ein wenig warten.
Viele Grüße
Thomas