Autor Beitrag
Steph.Delphi
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Di 07.09.10 14:03 
Ich habe ein Rechteck auf ein Canvas gezeichnet. Jetzt würde ich gerne dieses Rechteck blinken lassen. Natürlich könnte man eine Schleife in der Art

ausblenden Delphi-Quelltext
1:
2:
3:
TImage1.visible := false;
sleep(500);
TImage1.visible := true;

schreiben, aber dann kann das Prog in der Zeit nichts anderes machen. Das Rechteck soll aber blinken, bis ein anderer Prozess fertig ist. Mit thread Programmierung kenne ich mich leider nicht aus. Gibt es eine einfache Möglichkeit sowas zu realisieren? (bin ziemlicher Anfänger)

Wäre nett, wenn da Jemand nen TIpp hätte!
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Di 07.09.10 14:16 
Du suchst den Suche in: Delphi-Forum, Delphi-Library TTIMER.

Um auf das Prozessende zu warten musst du erst verraten wie du ihn gestartet hast.

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
freedy
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 403
Erhaltene Danke: 1

Winows 7
Delphi XE
BeitragVerfasst: Di 07.09.10 22:14 
Hallo Steph.Delphi,

wenn es für dich nicht wichtig ist, wann und wie schnell dein Rechteck blinkt, könntest du auch ein Ereignis programmieren. Dazu rufst du innerhalb deiner Verarbeitung einfach die Untermethode auf. Diese sollte dann die folgende Zeile enthalten:

ausblenden Delphi-Quelltext
1:
  Application.ProcessMessages;					


Die Performance ist nicht ganz so gut, funktioniert aber.

Thread-Programmierung ist auch nicht so schwierig. Man sollte nur einige Regeln beachten. Hier ist ein gutes Tutorial: www.delphi-treff.de/...bjectpascal/threads/

Wenn noch Fragen sind, einfach stellen. :-)

Grüße