
Gadgets verschwinden
Gadgets verschwinden
Wenn ich etwas mit URLDownloadToFile runterlade und es mit einer Progressbar anzeige verschwinden immer die anderen Gadget wie text und buttens.
Wie kann ich es machen das es nicht so hängt?

4
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
ne ich habe es unter
[...]
Code: Alles auswählen
Repeat
Event = WaitWindowEvent()
If Event = #PB_EventGadget
GadgetID = EventGadgetID()
If GadgetID = #Button_2
For k=0 To 100
SetGadgetState(#progress_content, k)
URLDownloadToFile_(0,"http://mx03.de/updates/udlc.dll","udlc.dll",0,0)
Next
4
Mit "CPU-Auslastung" hat das nichts zu tun, es koennen einfach keine
Events mehr abgefragt werden (zum zeichnen der Gadgets noetig), da
die Programmschleife bei "URLDownloadToFile" stehen bleibt , zumindest
solange bis der Befehl abgearbeitet worden ist.
Benutze entweder eine Thread oder ein Callback. Beides findest du
mit Hilfe der Suchfunktion.
Events mehr abgefragt werden (zum zeichnen der Gadgets noetig), da
die Programmschleife bei "URLDownloadToFile" stehen bleibt , zumindest
solange bis der Befehl abgearbeitet worden ist.
Benutze entweder eine Thread oder ein Callback. Beides findest du
mit Hilfe der Suchfunktion.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
@RSB
siehste? nicht ins blaue vermuten, sondern informationen geben lassen.
@mx03
edel hat recht. es ist schon oft was drüber geschrieben worden.
außerdem ist die for-next-schleife an der stelle unnütz.
auch ohne URLDownload würde dein Statusbar niemals unterschiedlichen status anzeigen,
weil er in allen 100 zuständen eingestellt wird,
und erst nach 100 gelangt die ereignisschleife wieder an die eventabfrage,
wodurch ein neuzeichnen möglich wird.
siehste? nicht ins blaue vermuten, sondern informationen geben lassen.
@mx03
edel hat recht. es ist schon oft was drüber geschrieben worden.
außerdem ist die for-next-schleife an der stelle unnütz.
auch ohne URLDownload würde dein Statusbar niemals unterschiedlichen status anzeigen,
weil er in allen 100 zuständen eingestellt wird,
und erst nach 100 gelangt die ereignisschleife wieder an die eventabfrage,
wodurch ein neuzeichnen möglich wird.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
@Kaeru Gaman
Nur zur Information!
Ich meine ja so, wenn man dieser Befehl unter Openwindows setzt, dann ist das Programm so lange ausgelastet, bis die angegebene Datei heruntergeladen ist.
Und außerdem habe ich ja gefragt, ob dies der Fall ist und komm nicht mit "siehste" etc.
Er solle, wie ich vorgeshlagen habe, mit Threads arbeiten.
Nur zur Information!
Ich meine ja so, wenn man dieser Befehl unter Openwindows setzt, dann ist das Programm so lange ausgelastet, bis die angegebene Datei heruntergeladen ist.
Und außerdem habe ich ja gefragt, ob dies der Fall ist und komm nicht mit "siehste" etc.
Er solle, wie ich vorgeshlagen habe, mit Threads arbeiten.
Also ich hab das mal mit Threads gemacht nun dauert der download aber länger als 30min und das nur für ~1MB
Code: Alles auswählen
Procedure downloadpatch()
For k=0 To 100
SetGadgetState(#progress_content, k)
URLDownloadToFile_(0,"http://gamers-control.de/updates/udlc.dll","udlc.dll",0,0)
Next
EndProcedure
4
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22