![]() |
Re: Problem mit Struktur einer If then
Lass dir mal in einer Messagebox die Filenames und die bitmap.width ausgeben. Vielleicht stimmt da was nicht...ansonsten sehe ich grade den fehler nicht.
Damit du das ganze in eine endlosschleife bekommst, würde ich die FOR schleife in eine extra Prozedur schreiben z.B. procedure EinDurchgang. Und dann rufst du die immer wieder auf. Noch ein Tipp, damit dir das Programm nicht "einfriert". Ersetze das Sleep(8000) besser durch:
Delphi-Quellcode:
Dann würde das ganze so aussehen:procedure WaitSomeTime(milsec:integer); var Start, Ende:integer; begin Start:=GetTickCount; Ende:=Start; while (Ende-Start)<milsec do begin application.processmessages; sleep(50); Ende:=GetTickCount; end; end;
Delphi-Quellcode:
Aber das ändert wahrscheinlich nichts an deinem Endlos Problem
procedure TForm3.FormShow(Sender: TObject);
var ImageFile: string; n, i: integer; begin n:= Form1.Memo1.Lines.Count-1; for i:=0 to n do begin ShowMessage(inttostr(i) + '< i to n >' + inttostr(n)); //---------------------------------------------------------------------- if i mod 5 = 0 then ImageFile:=ExtractFilePath(Application.ExeName)+'HZImage.bmp' else ImageFile:=ExtractFilePath(Application.ExeName)+'TempImage.bmp'; //---------------------------------------------------------------------- JpegToBmp(Form1.Edit1.Text + Form1.Memo1.Lines[i]); FadeIn(ImageFile); WaitSomeTime(8000); Fadeout(ImageFile); end; end; |
Re: Problem mit Struktur einer If then
Also ich glaub nicht das da irgendwas hängenbleibt wenn dein Bild 800 pixel breit ist wird die Schleife nur 800x durchlaufen, da mit dem debugger durchsteppen zu wollen ist quatsch.
Weiterhin war deine Idee mit dem Timer vom Anfang recht gut anders lässts sichs eigentlich nur mit threads lösen wenn dein Programm reaktionsfähig bleiben soll und das ist sicher etwas overkill für dich als Anfänger. var ImageFile: string; procedure Timerproc(Sender : TObject); begin if Imagefile <> '' then Fadeout(ImageFile); if PicCount >= Form1.Memo1.Lines.Count-1 then PicCount := 0 else Inc(PicCount); if (PicCount mod 5) = 0 then ImageFile := ExtractFilePath(Application.ExeName)+'HZImage.bmp' else ImageFile := ExtractFilePath(Application.ExeName)+'TempImage.bm p'; JpegToBmp(Form1.Edit1.Text + Form1.Memo1.Lines[PicCount]); FadeIn(ImageFile); end; So müsste es eigentlich klappen, |
Re: Problem mit Struktur einer If then
@christian_u: genau dein Quelltext steht schon in Beitrag #6 ;) Die schleife gibt keinen Overkill wenn du das sleep ein bisschen geschickt machst :) eigentlich sollten beide varianten funktionieren!
@ sexmagic wenn du willst guck ich mir den quellcode mal komplett an |
Re: Problem mit Struktur einer If then
Liste der Anhänge anzeigen (Anzahl: 1)
Danke für das Angebot, das nehme ich sehr gerne an.
Allerdings habe ich jetzt die Schleifenvariante wieder raus genommen weil ich damit absolut nicht klargekommen bin, hab jetzt wieder die Timervariante drin. Im Anhand ist das Projekt, ich hab einfach mal alles reingepackt da ich nicht genau weiss welche Daten man benötigt ;) EDIT: Achja bitte nicht lachen wenn etwas nicht ganz konform ist aber ich geb mein bestes ;) |
Re: Problem mit Struktur einer If then
Das is doch schonmal richtig gut!!! Coole sache...ich guck mal durch...
|
Re: Problem mit Struktur einer If then
Liste der Anhänge anzeigen (Anzahl: 1)
So, 1a ohne Timer und ohne Thread ;) versuche noch, das flackern von deinem logo in der ecke wegzubekommen...
|
Re: Problem mit Struktur einer If then
Wegen des Flackerns schonmal
Delphi-Quellcode:
ausprobiert?
Form.DoubleBuffered := True
|
Re: Problem mit Struktur einer If then
Liste der Anhänge anzeigen (Anzahl: 1)
Jo, aber wenn wir zwei Images direkt übereinander legen hilft doublebuffered leider nix.
Habe zunächst ein Panel erstellt, auf welchem nun das zweite Image liegt...jetzt ists flimmerfrei ;) Hoffe es entspricht so deinen Erwartungen! So jetzt erwarte ich aber auch eine teilzeitanstellung in eurem Betrieb als Informatikberater :D K´Ne, kleiner Spass und schönes Wochenende! |
Re: Problem mit Struktur einer If then
Stimmt, hatte ich übersehen.
Was ist jetzt an der Timer Mehthode so schlecht ? Einfach und schnell realisiert. Deine Variante frisst nur 3x soviel Code und bestimmt 200x soviel Systemresourcen. |
Re: Problem mit Struktur einer If then
Vielen Dank alleinherscher,
das funktioniert ja wunderbar!! :lol: :lol: Also mehr Code is das nicht wirklich geworden, zu den Resourcen kann ich nicht viel sagen da ich Sie mir beim Timer nicht angeschaut habe und dieses auch nicht 100% funktioniert hat. Ab das haut ja jetzt schon gewaltig hin. Herzlichen Dank noch mal an dich, jetzt muss ich das ganze aber erstmal Stück für Stück durchchecken damit ich auch alles richtig verstehe! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:51 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