Seite 1 von 1

Problem bei Aufruf eines Dialoges

Verfasst: Do, 08.09.2005 00:55
von wasgedkongred
Hallo Leute,

habe ein Problem bei Aufruf eines Dialoges, wenn der Makro-Editor nicht gleichzeitig geöffnet ist. Bekomme dann immer eine Fehlermeldung:
"ungültiger Prozeduraufruf"

mein Code:

Code: Alles auswählen

	dlgBeschreibung = globalscope.DialogLibraries.Standard.MainDlg
	dlg = createUnoDialog(dlgBeschreibung)
MainDlg ist ein Dialog, der mit dem Dialogassistenten erstellt wurde.
Wenn der Editor dann gleichzetig mit der Fehlermeldung aufgeht oder ich ihn von vornherein offen habe, dann gibt es kein problem...

danke schon mal im voraus,
wasgedkongred

Verfasst: Do, 08.09.2005 08:04
von Toxitom
Hey wasgedkongred,

mir fehlt in deinen Codezeilen das Laden des Dialoges? Vergessen oder gar nicht vorhanden?
Also die Zeile

Code: Alles auswählen

globalscope.DialogLibraries.LoadLibrary("Standard")
Und zwar bevor du Deine zwei Zeilen schreibst.
Versuch es mal.

Gruss
Thomas

Verfasst: Do, 08.09.2005 16:12
von wasgedkongred
danke für den tip, aber obwohl mein code jetzt so aussieht:

Code: Alles auswählen

Sub Main
	dim dlgBeschreibung as object
	dim dlg as object
	Globalscope.DialogLibraries.LoadLibrary("Standard")
	 dlgBeschreibung = DialogLibraries.Standard.DialogTest
	dlg = createUnoDialog(dlgBeschreibung)
	dlg.execute
End Sub
bekomme ich immer noch die fehlermeldung "ungültiger prozeduraufruf", wenn ich nicht gleichzeitig den makroeditor geöffnet habe.
was du hier siehst, ist mein vollständiger code. ich will damit nur den dialog ohne fehlermeldung öffnen, nicht mehr.
fehlt denn sonst noch irgendwas, was wichtig wäre?
ich benutze übrigens OOo 1.1.4. vllt ist das ja wichtig...

setze ich mit
Globalscope.DialogLibraries.LoadLibrary("Standard")

eigentlich den pfad zur library "standard" in soffice oder zu "standard" in meinem dokument?
die zeile scheint nämlich überhaupt nichts zu machen.
wenn ich sie auskommentiere, dann funktioniert alles immer noch gleich gut/schlecht.....

Verfasst: Do, 08.09.2005 16:21
von wasgedkongred
so klappts:

Code: Alles auswählen

Sub Macro1
	dim dlgBeschreibung as object
	dim dlg as object	
	Dialoglibraries.Loadlibrary("Standard")
	dlg = CreateUnoDialog(DialogLibraries.Standard.DialogTest)
	dlg.execute() 
End Sub
wasgedkongred

Verfasst: Fr, 09.09.2005 08:23
von Toxitom
Hey wasgedkongred,

mit "globalscope" setzt sucht OOo den Dialog im "übergeordneten" Bereich, also nicht im Dokument. Na ja, nachdem du ja schon den Begriff genutzt hast, dachte ich, dein Dialog ist dort.

Gruss
Thomas