Seite 1 von 1
CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Fr, 22.08.2008 07:48
von red2sign
Guten Morgen
Ich habe eine writer-Datei, in der das Makro "CallDialog" beim starten den Dialog aufruft.
Wenn ich die Datei aber als Vorlage speichere, muss ich den Dialog manuell starten.
Ist das normal?
Code: Alles auswählen
Public MyDlg as Object
Sub CallDialog
DialogLibraries.LoadLibrary( "Standard" )
MyDlg = CreateUnoDialog( DialogLibraries.Standard.Dialog1 )
MyDlg.Model.Step=1
MyDlg.Execute()
MyDlg.Dispose()
End Sub
Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Mo, 25.08.2008 14:59
von red2sign
Hi
Habs mal ausprobiert, aber ohne Effekt...
Wie regelt ihr das bei euch?
Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Mo, 25.08.2008 17:08
von turtle47
Hi red2sign,
folgendes funktioniert bei mir:
Das Makro auf "Dokument erzeugen" gelegt.
Dann das *.ott Dokument als Vorlage abgelegt.
Aufruf über Menue > Datei > Neu > Vorlagen und Dokumente > Dialog öffnet sich.
Oder aber das *.ott Dokument als Standardvorlage definiert > Dialog öffnet sich beim Starten von Writer.
Jürgen
Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Di, 26.08.2008 07:25
von red2sign
Es scheint mir ein anderes Problem zu sein, denn wenn ich in der Vorlagedatei das Startmakro manuell anstarte (durch eine Symbolverknüpfung), erscheint der Dialog auch nicht.
Muss man Dialoge in Vorlagen anders ansprechen / anders erzeugen?

Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Di, 26.08.2008 10:49
von red2sign
Hi!
Was wird mit "LoadComponentFromURL-Methode" gemeint?
Einen solchen habe ich nicht... ???

Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Di, 26.08.2008 11:01
von turtle47
Hallo,
red2sign hat geschrieben:.Name = "MacroExecutionMode"
.Value = "com.sun.star.document.MacroExecMode.ALWAYS_EXECUTE_NO_WARN
hat damals bei mir auch nicht funktioniert.
In meiner Extension "LastSession" habe ich das dann wie folgt gelöst:
Code: Alles auswählen
Dim mArgs(3) as New com.sun.star.beans.PropertyValue
mArgs(0).Name = "ReadOnly"
mArgs(0).Value = False
mArgs(1).Name = "MacroExecutionMode"
mArgs(1).Value = 4
mArgs(2).Name = "AsTemplate"
mArgs(2).Value = false
mArgs(3).Name = "Wait"
mArgs(3).Value = true
oDocument = ThisComponent.getCurrentController.GetFrame.loadComponentFromURL(sURL,"_blank",0, mArgs())
Viel Erfolg.
Jürgen
Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Di, 26.08.2008 11:03
von red2sign
Hi Jürgen,
deinen Code dann also in mein Startmakro zusätzlich eintragen?
Thx

Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Di, 26.08.2008 18:18
von turtle47
Hi,
ich habe mich heute Morgen auf die Schnelle dazu hinreissen lassen Dir obigen Code zu posten.
Dieser Code ist aber nur dann einzusetzen, wenn man aus einem Makro ein anderes Dokument mit Makroinhalt aufruft.
red2sign hat geschrieben:Was wird mit "LoadComponentFromURL-Methode" gemeint?
Einen solchen habe ich nicht... ???

Eben drumm.
Jürgen
Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Mi, 27.08.2008 07:35
von red2sign
Achso, trotzdem Danke mal.
Wo füge ich dann den folgenden Code ein?
Code: Alles auswählen
.Name = "MacroExecutionMode"
.Value = "com.sun.star.document.MacroExecMode.ALWAYS_EXECUTE_NO_WARN [/[uote]
Vor allem sind vorne ja zwei Punkte, da muss ja sicher was bestimmtes davor stehen?
Grüße!

Re: CallDialog ("Startmakro") in Vorlage nicht möglich?
Verfasst: Do, 28.08.2008 09:22
von Stephan
Was wird mit "LoadComponentFromURL-Methode" gemeint?
die gleichnamige Methode:
http://api.openoffice.org/docs/common/r ... entFromURL
Vor allem sind vorne ja zwei Punkte, da muss ja sicher was bestimmtes davor stehen?
die entsprechende Variable des Parameterarrays, meinethalben:
viewtopic.php?t=3023
oder schreibe es halt mit With:
Code: Alles auswählen
With Arg(0)
.Name = "MacroExecutionMode"
.Value = com.sun.star.document.MacroExecMode.ALWAYS_EXECUTE_NO_WARN
End With
(Ob das alles Dein Poblem löst weiß ich hingegen nicht, meine Frage beantwortest Du nicht zu meiner Vermutung antwortest Du mit 2 Gegenfragen, so das ich nicht weiß wo das Problem konkret liegt, mutmaßlich jedoch nicht da wo ich es annahm, also im Laden der DAtei mittels Makro und späterem Ausführen von makros aus der geladenen Datei.)
Gruß
Stephan