Mixen von wx.HTML und wx.python
Verfasst: Sonntag 14. Mai 2006, 11:18
Hallo,
erst einmal ein Lob, ich habe schon viel gelernt, nur durch das Lesen der Beiträge und Antworten in diesem Forum.
Nun zu meinem Problem. Es geht um das Mischen von wx.HTML und wx.python, welches man auch im Demo HtmlWindow mit der Taste WITH WIDGET sich ansehen kann.
Ich habe diese ganze Sache genauso in meinem Programm eingebaut bzw. angepasst und es funktioniert auch - wie im Demo (leider). Bei mir wird beim Start sofort die HTML-Seite mit meinen Widget geladen und beim Klick auf einem Link wird wird eine andere Seite mit Widget geladen.
Leider flackert beim Laden der ersten Seite und beim Link klicken der Frame am linken oberen Rand, was sich sehr störend bemerkbar macht.
Dies kann man auch beim Demo leicht feststellen wenn man den WITH WIDGET Knopf mehrmals hintereinander
drückt. Beim Demo stellt man dabei beim genauen hinsehen fest, daß das eingebettete SCROLLEDWINDOW
Tag (vom Demo ScrolledWindow) auch links oben kurz durchscheint, bevor es sich an die richtige Position auf der Htmlseite (weiter unten) verschiebt.
Bei meinen Programm ist es genauso, nur daß mein eigenes Widget links oben erscheint und sich dann anpasst.
Durch weiteres probieren und Quellcode anschauen, habe ich festgestellt, daß dies genau in dem Moment passiert, wo das HtmlWindow erstellt wird.
Im Demo wie bei mir wird ein Frame erstellt, dann ein Panel, welcher das HtmlWindow enthält.
Es erscheint dann kurz ein Ausschnitt in der Minimalgröße
oben links im Frame, dann füllt sich dieser Auschnitt mit dem Widget und dann vergrößert sich das Fenster und die HtML-Seite wird dann erst komplett dargestellt. Dies dauert so lange, daß es ein sehr störendes Flackern bewirkt.
Wie kann ich dies verhindern ? Kann ich irgendwie feststellen, wann die Seite komplett geladen ist und dann erst das Fenster sichtbar machen. So eine Art Buffering, aber wie soll das gehen?
Ich bin für jeden Lösungsansatz dankbar, weil ich einfach nicht mehr weiterkomme.
MFG
campinostar
erst einmal ein Lob, ich habe schon viel gelernt, nur durch das Lesen der Beiträge und Antworten in diesem Forum.
Nun zu meinem Problem. Es geht um das Mischen von wx.HTML und wx.python, welches man auch im Demo HtmlWindow mit der Taste WITH WIDGET sich ansehen kann.
Ich habe diese ganze Sache genauso in meinem Programm eingebaut bzw. angepasst und es funktioniert auch - wie im Demo (leider). Bei mir wird beim Start sofort die HTML-Seite mit meinen Widget geladen und beim Klick auf einem Link wird wird eine andere Seite mit Widget geladen.
Leider flackert beim Laden der ersten Seite und beim Link klicken der Frame am linken oberen Rand, was sich sehr störend bemerkbar macht.
Dies kann man auch beim Demo leicht feststellen wenn man den WITH WIDGET Knopf mehrmals hintereinander
drückt. Beim Demo stellt man dabei beim genauen hinsehen fest, daß das eingebettete SCROLLEDWINDOW
Tag (vom Demo ScrolledWindow) auch links oben kurz durchscheint, bevor es sich an die richtige Position auf der Htmlseite (weiter unten) verschiebt.
Bei meinen Programm ist es genauso, nur daß mein eigenes Widget links oben erscheint und sich dann anpasst.
Durch weiteres probieren und Quellcode anschauen, habe ich festgestellt, daß dies genau in dem Moment passiert, wo das HtmlWindow erstellt wird.
Im Demo wie bei mir wird ein Frame erstellt, dann ein Panel, welcher das HtmlWindow enthält.
Es erscheint dann kurz ein Ausschnitt in der Minimalgröße
oben links im Frame, dann füllt sich dieser Auschnitt mit dem Widget und dann vergrößert sich das Fenster und die HtML-Seite wird dann erst komplett dargestellt. Dies dauert so lange, daß es ein sehr störendes Flackern bewirkt.
Wie kann ich dies verhindern ? Kann ich irgendwie feststellen, wann die Seite komplett geladen ist und dann erst das Fenster sichtbar machen. So eine Art Buffering, aber wie soll das gehen?
Ich bin für jeden Lösungsansatz dankbar, weil ich einfach nicht mehr weiterkomme.
MFG
campinostar