Aktuelle Zeit: 23.02.2019 14:29

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags: Re: HTMLPrintDialog mit PB unter Windows
BeitragVerfasst: 24.10.2018 15:56 
Offline
Benutzeravatar

Registriert: 08.03.2013 14:27
Wohnort: ERB
Jopp. Den Thread habe ich komplett vergessen. habe aber auch seitdem kaum noch Zeit gehabt, irgendwas zu machen. Und das ganze gefrickel mit dem Schattenserver war mir dann auch nervig geworden. Mir kam es schlicht falsch vor, einen kleinen integrierten Webserver zu schreiben, der am Ende die Header-Daten ignoriert und nicht sauber validiert, ob alles richtig läuft. HTTP sieht im ersten Moment so schön einfach aus. Aber wenn man sowas zu Fuß schreiben muss, merkt man erst, wie nervig Fleißarbeit werden kann. Und der Nutzen stand dann dem Aufwand dann doch deutlichst hinten an.

_________________
USAC Protokoll
Universal Stringbased Application Communication Protocoll

Github: Zum Spezifikationdokument v0.01


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: HTMLPrintDialog mit PB unter Windows
BeitragVerfasst: 24.10.2018 23:00 
Offline
Benutzeravatar

Registriert: 20.07.2010 23:59
Wohnort: NRW
Auf meinem recht langsamen Win7-32 Rechner (PB5.61) hatte ich einen seltsamen Effekt mit dem Codebeispiel.

Die Druckvorschau poppte meist nur kurz auf .. und ein Druckauswahlfenster kam nicht. (Mit und ohne Debugger.)
So ca. jedes 3-5 Mal starten klappte es dann doch noch. :shock:

Mein Workaround:
Delay (100) hinzufügen nach letzter Programmzeile HTMLPrintDialog(HTMLContent, "h1 { color: red; }")

Das PB-Program war wohl einfach zu schnell fertig und beendet.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: HTMLPrintDialog mit PB unter Windows
BeitragVerfasst: 25.10.2018 07:02 
Offline
Benutzeravatar

Registriert: 08.03.2013 14:27
Wohnort: ERB
TheCube hat geschrieben:
Mein Workaround:
Delay (100) hinzufügen nach letzter Programmzeile HTMLPrintDialog(HTMLContent, "h1 { color: red; }")

Das PB-Program war wohl einfach zu schnell fertig und beendet.

Oder statt:
Code:
   Repeat
     Event = WaitWindowEvent()
     If Event = #PB_Event_Gadget
        If EventGadget() = PrintDialog And EventType() = #PB_EventType_TitleChange
           Break
        EndIf
     EndIf
   Until Event = #PB_Event_CloseWindow
   CloseWindow(Window)


eben so:
Code:
Repeat
     Event = WaitWindowEvent()
     If Event = #PB_Event_Gadget
        If EventGadget() = PrintDialog And EventType() = #PB_EventType_TitleChange
           If GetGadgetItemText(PrintDialog,#PB_Web_PageTitle) = "CLOSE"
      break
      EndIf
        EndIf
     EndIf
   Until Event = #PB_Event_CloseWindow
   CloseWindow(Window)


Nicht getestet. Müsste aber gehen ;)

NACHTRAG: Die Variante macht auch mehr Sinn als die originale. Habe den Code im Startpost mal angepasst :D

_________________
USAC Protokoll
Universal Stringbased Application Communication Protocoll

Github: Zum Spezifikationdokument v0.01


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: HTMLPrintDialog mit PB unter Windows
BeitragVerfasst: 25.10.2018 19:38 
Offline
Benutzeravatar

Registriert: 20.07.2010 23:59
Wohnort: NRW
Sehr schön ... und sehr viel besser funktionierend. :allright:

So grob jedes 10mal hab ich den Effekt zwar noch, besonders wenn Win7 nach dem Booten
noch mit sich selbst beschäftigt ist. Aber vielleicht ist ja auch einfach nur mein Murkssystem schuld.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: HTMLPrintDialog mit PB unter Windows
BeitragVerfasst: 25.10.2018 20:39 
Offline
Benutzeravatar

Registriert: 08.03.2013 14:27
Wohnort: ERB
Ist aber schon komisch. Denn die OnFocus-Eventmethode ist seit Jahren gängige Praxis bei Popups. Dies habe ich nur 1zu1 darauf übertragen. Ich suche da nochmal nach weiteren Kniffen, die vielleicht zuverlässiger funktionieren. So etwas darf und sollte nicht passieren. Mal sehen, was sich noch finden lässt. Das Hauptproblem ist aber definitiv der Javascript-Teil. Denn bei dir scheint das Setzen des Fokus auf das Dokument so lange zu dauern, dass das dadurch gefeuerte Event erst nach dem registrieren der Handlers vom IE abgearbeitet wird, wodurch es vorm Dialog zum Schließen des Fensters kommt.

_________________
USAC Protokoll
Universal Stringbased Application Communication Protocoll

Github: Zum Spezifikationdokument v0.01


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: HTMLPrintDialog mit PB unter Windows
BeitragVerfasst: 25.10.2018 21:47 
Offline
Benutzeravatar

Registriert: 20.07.2010 23:59
Wohnort: NRW
Vielleicht ist das was du schreibst das sporadische Problem ... oder doch etwas vom Win-System.
Von meiner Seite aus muss da aber wirklich keine Zeit drauf verbraten werden:
Habe den Code zu einer .Exe gemacht (bisher immer aus PB heraus compiliert und gestartet)
und konnte den Fehler in 50 Starts nicht mehr provozieren.

Wer weiss welches Phantom wir da jagen .... :freak:

Edit
Kaum hier geschrieben und noch ein paar Mal probiert passierte der Fehler doch noch mal /:->
Also .Exe-machen ändert doch nichts ...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: HTMLPrintDialog mit PB unter Windows
BeitragVerfasst: 26.10.2018 15:20 
Offline
Benutzeravatar

Registriert: 08.03.2013 14:27
Wohnort: ERB
TheCube hat geschrieben:
Wer weiss welches Phantom wir da jagen .... :freak:

Keines! Ich weiß ja, was schuld daran ist ;)

Blöderweise funktioniert das onofterprint-Event im Gadget nicht, weswegen ich überhaupt diesen Kniff benutzen muss. Aber ich teste nachher einfach mal, statt dem Onload-Attribut einfach das blanke Javascript in den Kopfbereich zu packen. Mal sehen, was ich da für Möglichkeiten bekomme.

Auch wenn dir das jetzt nicht ganz so wichtig ist, kann ich solch Seiteneffekte nicht ausstehen und behebe sie lieber ;)

_________________
USAC Protokoll
Universal Stringbased Application Communication Protocoll

Github: Zum Spezifikationdokument v0.01


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite Vorherige  1, 2

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: Majestic-12 [Bot] und 4 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye