Ich habe das Problem, dass ich einen in OOoCalc angestossenen, aber noch nicht ausgeführten Druckvorgang bei Verwendung eines Makros abbrechen möchte.
Verwendete OOo-Version: 3.2.1.
OS: Windows 7 (64bit)
Folgende Grundeinstellung besteht (bitte nachstellen, damit Problem nachvollzogen werden kann):
Extras -> Anpassung -> Ereignisse -> Ereignis "Dokument" -> Zugewiesene Aktion ist ein Makro mit dem Namen "Druckerpruefung"
Inhalt des Makros "Druckerpruefung":
Code: Alles auswählen
Sub Druckerpruefung
oDoc = ThisComponent
aPrinterProperties = oDoc.getPrinter()
oPrinterName = aPrinterProperties(0)
If IsNull( oPrinterName ) Then
MsgBox( "Kein Drucker gefunden" )
Else
if MsgBox( "Der aktuelle Drucker ist: " & oPrinterName.Value, 1,"Hinweis") = 2 then
exit sub
else
rem Aufruf des Druckvorgangs
dim aPrintOps(0) as new com.sun.star.beans.PropertyValue
oDoc = ThisComponent
oViewCursor = oDoc.CurrentController.getViewCursor()
aPrintOps(0).Name = "Pages"
aPrintOps(0).Value = trim(str(oViewCursor.getPage()))
oDoc.print(aPrintOps())
endif
EndIf
end sub
Schilderung des Problems:
Beim Anstoßen des Druckvorganges (z.B. über Datei -> Drucker) wird das o.g. Makro aufgerufen bzw. läuft korrekt ab, d.h. es erscheint die Abfrage, ob gedruckt werden oder abgebrochen werden soll ("o.k." oder "Abbrechen").
Das Problem ist nun, dass beim Anklicken von "Abbrechen" der Druckvorgang durchgeführt, obwohl an dieser Stelle der Druckvorgang abgebrochen werden soll.
Frage:
Wie kann das Fortlaufen des Druckvorgang unterbunden werden, d.h. wie kann der Druckvorgang abgebrochen werden?
Gruß
Jochen