AGB  ·  Datenschutz  ·  Impressum  







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

Kreuzungs Ampel Problem

Offene Frage von "DeddyH"
Ein Thema von thejacensolo · begonnen am 11. Jun 2013 · letzter Beitrag vom 11. Jun 2013
 
thejacensolo

Registriert seit: 11. Jun 2013
Ort: Frankfurt am Main
13 Beiträge
 
FreePascal / Lazarus
 
#1

Kreuzungs Ampel Problem

  Alt 11. Jun 2013, 17:23
Also erstmal vorab:
1. falls dass in der falschen Kategorie steht bitte moven, bin neu sry.
2. ja ich habe die Suchfunktion von google dem Forum und diversen anderen Seiten benutzt und bin nie auf eine brauchbare lösung gekommen.
Ich habe von meinem Lehrer den Auftrag bekommen eine Ampel kreuzung zu schreiben, woran ich glorreich gescheitert bin, dann habe ich ein neues Projekt erstellt und mit einer einfachen Ampel von vorne angefangen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  {Rot1.visible := true;
  sleep(1000);
  Application.ProcessMessages;
  if Rot1.visible = true then
  begin
    Rot1.visible := false;
    Gelb1.visible := false;
    Gruen1.visible := false;
    Rotgelb1.visible := true;
   end;}

  timer1.enabled := true;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Gruen1.visible := false;
  Gelb1.visible := false;
  Rot1.visible := false;
  Rotgelb1.visible := false;
  timer1.enabled := false;
end;

procedure TForm1.Timer1StopTimer(Sender: TObject);
begin

end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if Rot1.visible then
   begin
     Rot1.visible := false;
     Gelb1.visible := false;
     Gruen1.visible := false;
     Rotgelb1.visible := true;
     sleep(1000);
     Application.ProcessMessages;
   end
   else
    If RotGelb1.visible then
    begin
     Rot1.Visible:=False;
     Gelb1.Visible:=false;
     Gruen1.visible:=true;
     RotGelb1.visible:=False;
     sleep(1000);
     Application.ProcessMessages;
    end
    else
      If Gruen1.visible then
      begin
       Rot1.Visible:=False;
       Gelb1.Visible:=true;
       Gruen1.visible:=False;
       RotGelb1.visible:=False;
       sleep(1000);
       Application.ProcessMessages;
      end
        else
         If Gelb1.visible then
         begin
          Rot1.Visible:=true;
          Gelb1.Visible:=false;
          Gruen1.visible:=False;
          RotGelb1.visible:=False;
          Application.ProcessMessages;
          sleep(1000);

         end;
end;
Also eine einfache if then else reihenfolge, aber ich habe dass problemm, dass die Form nichts anzeigt (der button leuchtet nur) Timer intervall ist 1000
der befehl Application.ProcessMessages; klappt irgendwie nicht und auch die sleep funktion stellt nichts dar.(Mit einer Anweisung hats geklappt, aber nach einer Sekunde nichterscheinen erschien Zustand Rotgelb.) Wie kann ich es hinkriegen dass er mir bei code 2 regelmäßig etwas darstellt?
  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 16:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz