AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Prozedur auf Knopfdruck?

Ein Thema von lycaine · begonnen am 31. Jan 2007 · letzter Beitrag vom 1. Feb 2007
 
lycaine

Registriert seit: 28. Jan 2007
2 Beiträge
 
#7

Re: Prozedur auf Knopfdruck?

  Alt 1. Feb 2007, 20:13
blackheart hatte im Prinzip Recht, ich habs einfach so reingeschrieben und nicht im OI eingestellt - na ja, bin halt nochn Delphi-Noob

aber irgendwie klappt das doch nicht ganz so recht, ich wollt nen Reaktionstest schreiben, der auf Mausklick oder Tastendruck reagiert - aber ich hab 4 mögliche ergebnisse. Ich hab den Quellcode/ .exe mal angefügt, damit ihr ne ungefähre Vorstellung davon habt.

PS: auch für anderweitige Verbesserungsvorschläge bin ich gerne offen

Delphi-Quellcode:
procedure TForm1.Panel1Click(Sender: TObject);
var zw: integer;
begin
timer1.Enabled:=false;
zw:=random(4);
CASE zw OF
0: labelchange.Color:=clred;
1: labelchange.Color:=clblue;
2: labelchange.Color:=cllime;
3: labelchange.Color:=clyellow;end;
time := Now;
end;

procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
begin
labelchange.Color:=clsilver;
randomize;
timer1.Interval:= 1000 + random(4000);
timer1.Enabled:=true;
end;

procedure TForm1.Label1Click(Sender: TObject);
begin
  if (not Timer1.Enabled) and (time <> 0) and (labelchange.color=label1.color) then
  begin
    labelmillisek.caption:=FloatToStr(floor(MilliSecondSpan(time, Now)));
      IF StrToInt(labelmillisek.caption) < 1000 THEN
      gauge1.Progress:=100-(floor(StrToInt(labelmillisek.Caption)/10))
      ELSE gauge1.Progress:=0;
  timer2.enabled:=true;
  time := 0;
  end
  else
    IF not(labelchange.color=label1.color) THEN showmessage('Falsche Farbe!!!')
      ELSE
        IF timer1.enabled=true THEN showmessage('Ein wenig früh, oder?')
        ELSE showmessage('Bitte erst mal starten!');
end;

procedure TForm1.Label2Click(Sender: TObject);
begin
  if (not Timer1.Enabled) and (time <> 0) and (labelchange.color=label2.color) then
  begin
    labelmillisek.caption:=FloatToStr(floor(MilliSecondSpan(time, Now)));
      IF StrToInt(labelmillisek.caption) < 1000 THEN
      gauge1.Progress:=100-(floor(StrToInt(labelmillisek.Caption)/10))
      ELSE gauge1.Progress:=0;
  timer2.enabled:=true;
  time := 0;
  end
  else
    IF not(labelchange.color=label2.color) THEN showmessage('Falsche Farbe!!!')
      ELSE
        IF timer1.enabled=true THEN showmessage('Ein wenig früh, oder?')
        ELSE showmessage('Bitte erst mal starten!');
end;

procedure TForm1.Label3Click(Sender: TObject);
begin
  if (not Timer1.Enabled) and (time <> 0) and (labelchange.color=label3.color) then
  begin
    labelmillisek.caption:=FloatToStr(floor(MilliSecondSpan(time, Now)));
      IF StrToInt(labelmillisek.caption) < 1000 THEN
      gauge1.Progress:=100-(floor(StrToInt(labelmillisek.Caption)/10))
      ELSE gauge1.Progress:=0;
  timer2.enabled:=true;
  time := 0;
  end
  else
    IF not(labelchange.color=label3.color) THEN showmessage('Falsche Farbe!!!')
      ELSE
        IF timer1.enabled=true THEN showmessage('Ein wenig früh, oder?')
        ELSE showmessage('Bitte erst mal starten!');
end;

procedure TForm1.Label4Click(Sender: TObject);
begin
  if (not Timer1.Enabled) and (time <> 0) and (labelchange.color=label4.color) then
  begin
    labelmillisek.caption:=FloatToStr(floor(MilliSecondSpan(time, Now)));
      IF StrToInt(labelmillisek.caption) < 1000 THEN
      gauge1.Progress:=100-(floor(StrToInt(labelmillisek.Caption)/10))
      ELSE gauge1.Progress:=0;
  timer2.enabled:=true;
  time := 0;
  end
  else
    IF not(labelchange.color=label4.color) THEN showmessage('Falsche Farbe!!!')
      ELSE
        IF timer1.enabled=true THEN showmessage('Ein wenig früh, oder?')
        ELSE showmessage('Bitte erst mal starten!');
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
gauge1.Progress:=0;
labelchange.color:=clsilver;
timer2.enabled:=false;
end;

procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
CASE key OF
81: TForm1.Label1Click(Sender: TObject);
65: TForm1.Label2Click(Sender: TObject);
87: TForm1.Label3Click(Sender: TObject);
83: TForm1.Label4Click(Sender: TObject);
end;
Angehängte Dateien
Dateityp: exe project1_964.exe (407,5 KB, 4x aufgerufen)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13: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