Makro für Formatvorlagen aufzeichnen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Makro für Formatvorlagen aufzeichnen

von Toxitom » Mi, 28.03.2007 12:21

Hey Jonny,
...mir vielleicht ein gutes Tutorial oder Buch zu diesem Thema empfehlen.
Schau mal im ersten Thread des Basic-forums. Dort sind alle wichtigen Quellen aufgelistet - und jede Menge freier Tutorials.
Als Buch? Klar hab ich eine Empfehlung - das Standardwert und die Referenz ;-) Schau einfach in meine Signatur.

Gruss
Thomas

von Jonny5K » Mi, 28.03.2007 08:38

Hallo Toxitom,

schonmal danke für die Antwort.
Hatte ich mir schon fast gedacht, das ich da mit dem Makrorekorder das nit hinbekommen werde :-(.

Meine Erfahrungen mit Makro-Programmierung und dem UNO Modell sind noch recht bescheiden. Kannst du mir vielleicht ein gutes Tutorial oder Buch zu diesem Thema empfehlen.

Gruß Jonny

von Toxitom » Di, 27.03.2007 18:02

Hey Jonny,

anpasssen? Wird wohl kaum gehen. Der Makrorekorder zeichnet "nur" Dispatcher-Code auf - und der kann nicht alles. Da gibt es einfach Grenzen. Wahrscheinlich hast du welche erreicht.
Und Ergänzen kannst du den Code entsprechend auch kaum, hier bliebe nur die komplette "Neuprogrammierung" in "echten" Code - und das ist sicher richtig Arbeit.

Wieviel Erfahrung hast du schon mit der Marko-Programmierung und dem UNO Modell?

Gruss
Thomas

Makro für Formatvorlagen aufzeichnen

von Jonny5K » Mo, 26.03.2007 18:43

Hallo,

ich habe ein Problem mit dem Aufzeichnen von 2 Makros unter OpenOffice.

1.
Wenn ich unter „Format -> Zeichen“ auf der Karteikarte „Schrifteffekt“ die Checkbox „Ausgeblendet“ aktiviere, wird dies in dem von mir auf gezeichneten Makro ignoriert.

Hier mal ein Codebeispiel, indem ich zum einen die Checkbox „Ausgeblendet“ aktiviert habe und die Checkbox „Blinkend“:

Code: Alles auswählen

.
sub VerbergenTest
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Flash"
args1(0).Value = true

dispatcher.executeDispatch(document, ".uno:Flash", "", 0, args1())

end sub
Und wie man sieht wird dabei nur die Checkbox „Blinkend“ berücksichtigt. Aber nicht die von mit gewollte Checkbox „Ausgeblendet“.


2.
Wenn ich ein Makro aufzeichne, mit dem ich eine neue Formatvorlage anlege bzw. eine bestehende Vorlage (z.B. Überschrift1) ändere, und dabei dann auch schon z.B. Schriftgröße, Schriftschnitt und Schriftgrad festlege, wird dies im Makro ebenfalls ignoriert.

Hier ein Beispiel, in dem ich auf „Format -> Formatvorlage“ gegangen bin und dann auf „Überschrift1“ mit Rechtsklick und „Ändern“, in dem Dialog habe ich dann die Schriftgröße, Schriftschnitt und Schriftgrad geändert und folgenden Code erhalten:

Code: Alles auswählen

sub FormatvorlageTest
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "DesignerDialog"
args1(0).Value = true

dispatcher.executeDispatch(document, ".uno:DesignerDialog", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Param"
args2(0).Value = "Überschrift 1"
args2(1).Name = "Family"
args2(1).Value = 2

dispatcher.executeDispatch(document, ".uno:EditStyle", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "DesignerDialog"
args3(0).Value = false

dispatcher.executeDispatch(document, ".uno:DesignerDialog", "", 0, args3())

end sub
Und wie man sieht, ist in dem Makro nix von den geänderten Eigenschaften zusehen.

Wäre super, wenn mir jemand sagen könnte, wie man die beiden von mir gewünschten Makros anpassen muss, damit sie „richtig“ funktionieren.

Schon mal danke
Gruß Jonny

Nach oben