![]() |
Problem mit panel farbe
hi habe foolgende proceduren
Delphi-Quellcode:
also es geht darum die reaktionsgeschwindigkeit zu messen. klappt auch wunderbar nur wollte ich jetzt das so machen , dass direkt mehrere messungen nacheinander durchgeführt werden. dabei soll tzwischen jeder messung in der timer2.ontimer von 5 runtergezählt werden. Das funktioniert auch einwandfrei nun soll aber die procedure wieder von vorne gestartet werden, was auch funktioniert. allerdings wird das panel nicht eingefärbt wie ich das verlange sondern es wird direkt wieder die procedure reaks gestartet. Komischer Weise wird die label6.caption dennoch wieder auf gesetzt- Wodran liegts???
procedure Tform1.reaks;
var i, e, f: IntegeR; begin randomize; i := random(6); if einfach1.Checked then begin e := random(100)*100; sleep (e); panel1.Color := clred; timer1.Enabled := true; listbox2.items.add (inttostr(e)); end; if mittel1.Checked then begin e := random(100)*100; sleep (e); panel1.Color := colors[i]; timer1.Enabled := true; listbox2.items.add (inttostr(e)); end; if schwer1.Checked then begin e := random(100)*100; sleep (e); panel1.Color := colors[i]; panel1.Height := random (4) *10+10; panel1.width := random (6) *30+30; timer1.Enabled := true; listbox2.items.add (inttostr(e)); end; end; procedure TForm1.MKeyPress(Sender: TObject; var Key: Char); begin if (key = 's') then begin if (key = 's') and (panel1.Color = clred) and (einfach1.Checked) then begin timer1.Enabled := false; listbox1.items.add (inttostr(ms)); end; if (key = 's') and (mittel1.Checked) then begin if not (panel1.Color = clbtnface) then begin timer1.Enabled := false; listbox1.items.add (inttostr(ms)); end; end; if (key = 's') and (schwer1.Checked) then begin if not (panel1.Color = clbtnface) then begin timer1.Enabled := false; listbox1.items.add (inttostr(ms)); end; end; timer2.Enabled := true; end; end; procedure TForm1.MClick(Sender: TObject); begin ms2 := 0; ms := 0; reaks; end; procedure TForm1.Timer2Timer(Sender: TObject); begin if strtoint(label6.Caption) > 0 then begin time := time - 1; label6.Caption := inttostr (time); timer2.Tag := 0; end else begin timer2.Enabled := false; panel1.Color := clbtnface; label6.Caption :='5'; reaks; end; end; |
Re: Problem mit panel farbe
Hallo
Anstelle von Sleep würde ich ![]() Für das Panel kannst du evtl. mal
Delphi-Quellcode:
versuchen.
Panel1.refresh;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:40 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