Thema: Delphi Problem mit panel farbe

Einzelnen Beitrag anzeigen

Benutzerbild von smepal
smepal

Registriert seit: 25. Okt 2005
Ort: Bechen
58 Beiträge
 
Delphi 2005 Personal
 
#1

Problem mit panel farbe

  Alt 28. Dez 2005, 12:51
hi habe foolgende proceduren
Delphi-Quellcode:
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;
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???
Martin Krämer
  Mit Zitat antworten Zitat