ThisComponent.close() läßt OO abstürzen

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: ThisComponent.close() läßt OO abstürzen

Re: ThisComponent.close() läßt OO abstürzen

von komma4 » Mi, 23.09.2009 11:43

Ja, die gibt es.

Möchtest Du dann:

* automatisch Speichern?
* eine Nachfrage, ob gespeichert werden soll
* automatisch die Änderung(en) verwerfen?


Vielleicht suchst Du einfach nur ThisComponent.dispose() (das läuft hier [OOo 3.0.1/WinXPpro] ohne Absturz?): schliesst das aktuelle Anwendungsfenster, auch bei Änderungen, ohne Nachfrage und ohne das dispatcher-Gedöhns zu nutzen.

Re: ThisComponent.close() läßt OO abstürzen

von eBayer » Di, 22.09.2009 16:23

Hallo Uschi,
das war dann doch etwas zuviel des Guten..... was Du vorgeschlagen hast, bezieht sich auf die gesamte Anwendung und schließt auch noch einen nicht vorhandenen Dialog.
Das folgende Makro wird von mir zum schließen benutzt und läuft zuverlässig - auch unter 3.1.1.
Gruß eBayer

Sub DocumentSchliessen ' wird vom PushButton "Ende" benutzt
Dim oDoc As Object, oDispatch As Object
oDoc = ThisComponent.CurrentController.Frame
oDispatch = createUnoService("com.sun.star.frame.DispatchHelper")
oDispatch.executeDispatch(oDoc, ".uno:CloseDoc", "", 0, Array())
End Sub

Re: ThisComponent.close() läßt OO abstürzen

von Uschi » Di, 22.09.2009 14:57

Sub OO_Beenden
Doc = ThisComponent
oDialog.endexecute()
Doc.store()
Doc = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(doc, ".uno:CloseDoc", "", 0, Array())
dispatcher.executeDispatch(doc, ".uno:CloseWin", "", 0, Array())
End Sub

Probiers mal damit

MFG USchi

Nach oben