Inhalt eines WebGadgets drucken

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
jear
Beiträge: 288
Registriert: 17.10.2004 01:59
Wohnort: Ammerland

Inhalt eines WebGadgets drucken

Beitrag von jear »

Mit nachfolgendem Code drucke ich den Inhalt eines WebGadgets aus.
Klappt prima, auch eingebettete Graphiken werden gedruckt.

Die Routine soll beim ersten Druck nach dem zu verwendenden Drucker fragen.
Im Fenster für die Druckerauswahl kann ich den Druck dann auch abbrechen.

Das aber bekommt meine Routine nicht mit, denn es kommt auch dann ein #S_OK zurück.
Wie kann ich feststellen, dass der Druck abgebrochen worden ist bzw. welcher Drucker gewählt wurde?

Code: Alles auswählen

;/ Inhalt Webgadget drucken
#OLECMDID_PRINT = 6 
#OLECMDEXECOPT_DODEFAULT       = 0
#OLECMDEXECOPT_PROMPTUSER      = 1
#OLECMDEXECOPT_DONTPROMPTUSER  = 2
#OLECMDEXECOPT_SHOWHELP        = 3

Procedure.i Drucken(WGadget.i, Datei.s, Logfile.i=#Null)
  Static.i mode = -1
  Protected.i ok, IsBusy
  Protected WebObject.IWebBrowser2 = GetWindowLong_(GadgetID(WGadget), #GWL_USERDATA)   
  
  If mode = -1
    If StringField(prtsettings, 1, #tr) = "1" : mode = #OLECMDEXECOPT_PROMPTUSER : Else : mode = #OLECMDEXECOPT_DONTPROMPTUSER: EndIf
  EndIf
  
  Repeat 
    WebObject\get_Busy(@IsBusy) 
    Delay(10) : While WindowEvent(): Wend 
  Until IsBusy = 0  
  
  ok = WebObject\ExecWB(#OLECMDID_PRINT, mode, 0, 0)
  
  If ok = #S_OK
    MText = " Gedruckt : " + Datei
    mode = #OLECMDEXECOPT_DONTPROMPTUSER : ProcedureReturn #True
  Else
    MText = " Fehler '" + Str(ok) + "' beim Drucken von : " + Datei
    mode = -1 : ProcedureReturn #False 
  EndIf   
  
  If IsFile(Logfile) : WriteStringN(Logfile, MText) : EndIf ;/ Logfile schreiben
  Meldung(MText)
  
  Delay(50)
 
EndProcedure
Man ist nie zu alt zum lernen, auch wenn man dabei manchmal alt aussieht!
Benutzeravatar
jear
Beiträge: 288
Registriert: 17.10.2004 01:59
Wohnort: Ammerland

Re: Inhalt eines WebGadgets drucken

Beitrag von jear »

Bin etwas perplex. 57 mal gelesen, auch nach einer Woche keine Antwort!

Niemand eine Idee? :shock:
Man ist nie zu alt zum lernen, auch wenn man dabei manchmal alt aussieht!
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3875
Registriert: 13.09.2004 17:48
Kontaktdaten:

Re: Inhalt eines WebGadgets drucken

Beitrag von bobobo »

hmm ..
#S_Ok kommt ja auch sofort, wogegen die eigentliche Druckfunktion
ja noch irgendwo rumrödelt.
Da fehlt wohl ein Callback oder sowas.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Re: Inhalt eines WebGadgets drucken

Beitrag von Kukulkan »

Evtl. hilft dir dieser Ansatz?

http://www.purebasic.fr/english/viewtop ... 15&t=48664

Aber nur, wenn Du den Content selbst reingestellt hast (also eigenes HTML).

Kukulkan
Antworten