![]() |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Zitat:
Bzw. zeig doch mal den Code, wie du den Thread "aufrufst" ... |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Zitat:
Das ist der "Thread"... Auf der Form? Das ist nix zum draufklicken... Nur aufrufen... Mavarik |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Zitat:
|
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
@SirRufo
So ruf ich ihn auf (in einem Button)
Delphi-Quellcode:
Und das ist der komplette Thread :oops:
geetest.Create(False);
Delphi-Quellcode:
unit threadtest;
interface uses System.Classes, f1diashow,f4einstellungendiashow, System.SysUtils; type geetest = class(TThread) protected procedure Execute; override; end; implementation procedure vclsettings; begin form1.Image1.Visible:=true; form1.Image1.Bitmap.LoadFromFile(playlist[0]); form1.image1.Height:=form1.Height; form1.image1.Width:=form1.Width; form1.image1.Position.X:=0; form1.image1.Position.Y:=0; count:=0; form1.speedbutton1.Visible:=false; form1.speedbutton3.Visible:=false; form1.listbox1.Visible:=false; form1.Panel2.Visible:=false; form1.Timer1.Enabled:=true; form1.speedbutton2.Visible:=true; form1.label3.Visible:=false; form1.progressbar1.Value:=0; end; procedure geetest.Execute; var i4: integer; begin NameThreadForDebugging('threadgee'); { Place thread code here } if filelistFINAL.Count>form4.SpinBox2.Value-1 then form1.progressbar1.Max:=form4.SpinBox2.Value else form1.progressbar1.Max:= filelistFINAL.Count; for i4 := 0 to filelistFINAL.Count-1 do begin if stop=false then begin form1.progressbar1.value:=i4+1; try form1.idftp1.get(filelistFINAL[i4],gethomepath+'/Temp/'+filelistFINAL[i4], true); except end; PlayList.add(gethomepath+'/Temp/'+filelistFINAL[i4]); //Während des Downloads wird die DIASHOW gestartet (ja nach Puffer Grösse) if form1.Timer1.Enabled=false then begin if filelistfinal.Count>form4.SpinBox2.Value-1 then begin //SOFERN playlist grösser ist als der Puffer if PlayList.Count>form4.spinbox2.value-1 then begin form1.progressbar1.value:=i4+1; form1.timer1.interval:=strtoint(form4.SpinBox1.text)*1000; Synchronize(vclsettings); end; // ist die FileListFINAL kleiner als der Puffer und aber mindestens 1 Bild geladen end else if playlist.count>-1 then begin form1.progressbar1.value:=i4+1; form1.timer1.interval:=strtoint(form4.SpinBox1.text)*1000; Synchronize(vclsettings); end; end; end else begin //Schlaufe wir abgebrochen da Boolean STOP=TRUE ist form1.timer1.Enabled:=false; form1.image1.Bitmap:=nil; form1.speedbutton1.Visible:=true; form1.speedbutton3.Visible:=true; form1.listbox1.Visible:=true; form1.image1.Visible:=false; form1.label3.Visible:=true; form1.speedbutton2.Visible:=false; form1.panel2.Visible:=false; break; end; end; end; end. :oops: @ Mavarik: Ja habe eben bis heute noch nie mit einem Thread gearbeitet. (Wie du wahrscheinlich sehr gut am meinem oben erkennen kannst). :oops::oops: @nuclearping Irgendeinen Unterschied macht es schon. den so friert die form1 nicht mehr ein. |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Ich weiß nicht wo ich da anfangen soll ... ok, da ist irgendwie alles falsch, was man falsch machen kann.
Die Funktion kommt glücklicherweise zustande und unglücklicherweise tut da tatsächlich was, so dass du denkst, so kann man das ruhig machen. Ein Tutorial zum Thema Threadding und Grundlagen zum Threadding allgemein wären dringend angebracht, wenn du ernsthaft mit Threads arbeiten möchtest. Das ist allerdings der Ritt auf Messers Schneide ohne Gurt. |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
ok. Muss mich da mal komplett informieren. Bis heute bin ich immer ohne Threads ausgekommen.
Danke |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Zitat:
|
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Zitat:
Zitat:
Das ich die Erzeugung von IdFtp1 im Thread für besser halte, lassen wir mal außen vor... Das es ggf. Probleme geben kann, falls Form1 schon weg ist auch... Funktionieren würde es trotzdem! Mavarik |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Zitat:
Da stand einer noch nie im Stau!...:lol: |
AW: Form reagiert nicht während idftp1.get trotz application.processmessages
Zitat:
Oder meinst du etwa nicht fahren dürfen bzw. nicht fahren sollen? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz