Autor Beitrag
Avant
Hält's aus hier
Beiträge: 13



BeitragVerfasst: So 23.12.07 02:43 
Hallo,

ich möchte, dass nach einer gewissen Zeit Anweisungen ausgeführt werden.


Beispiel:

1. auf Button klicken
2. diese Zeit warten
3. Anweisungen usw.


Ich hatte da schon an den Timer gedacht - lief aber bei mir nich.

Wie könnte ich das hinbekommen?


Danke im Voraus.

Avant


Moderiert von user profile iconjasocul: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am So 23.12.2007 um 11:16
LorenzS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 128

MS-DOS, WIN 7, WIN 10
BP7.0, D3, D5
BeitragVerfasst: So 23.12.07 02:48 
Entweder:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
procedure TForm1.FormCreate(Sender: TObject);
begin
 timer1.Enabled:=false;//timer Deaktiviern
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 timer1.Interval:=1000;// 1 sekunde.
 timer1.Enabled :=true;//Timer starten
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 timer1.Enabled:=false;//timer Deaktiviern, einmal aufrufen reicht
 //Anweisung
end;

oder
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.Button1Click(Sender: TObject);
Var zeit:double;
begin
 Zeit:=now+1.0*(1.0/86400.0);//aktuelle zeit plus eine sekunde
 while (now<=Zeit) do Application.processMessages;
 //Anweisung
end;
Avant Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mo 24.12.07 02:27 
Danke für die Antwort,

aber das Programm soll nach einer gewissen Zeit die Farbe von einem Object ändern.

Wie kann ich dann mehrere Anweisungen eingeben?

1. klick Button
2. Farbe auf grün
3. 1 Sekunde warten
4. Farbe auf blau
5. 1 sekunde warten
6. Farbe auf grün
7. 1 Sekunde warten
8. Farbe auf blau
usw.

im Prinzip wie bei einem Polizeiblaulicht oder einer Leuchtreklame.


Wie bekommt man das hin?
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10181
Erhaltene Danke: 1254

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 24.12.07 02:31 
Moin!

Such mal nach Suche in: Delphi-Forum, Delphi-Library AMPEL, damit solltest du weiter kommen. :idea:

In deiner nächsten Problembeschreibung sollte auch dein Code nicht fehlen, der nicht das tut, was er soll; sonst können wir dir nur schlecht helfen. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
LorenzS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 128

MS-DOS, WIN 7, WIN 10
BP7.0, D3, D5
BeitragVerfasst: Mo 24.12.07 10:41 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
//Global
 var Farbstatus:integer;
procedure TForm1.FormCreate(Sender: TObject); 
begin 
 timer1.Enabled:=false;//timer Deaktiviern 
 
end


procedure TForm1.Button1Click(Sender: TObject); 
begin 
 timer1.Interval:=1000;// 1 sekunde. 
 timer1.Enabled :=true;//Timer starten 
 Farbstatus:=1;//1.farbe;
end


procedure TForm1.Timer1Timer(Sender: TObject); 
begin  
 Farbstatus:=3-Farbstatus;//Farbe switch bei jeden timer aufruf von 1 auf 2 und von 2 auf 1;
 //Anweisung
 case Farbstatus of 
  1:begin
     //etwas wird Blau
    end;
  2:begin
     //etwas wird Grün
    end;
 end;
end;
Jerk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 251

Vista Ultimate, Ubuntu
Turbo Delphi 2006
BeitragVerfasst: Di 25.12.07 22:37 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure TForm1.FormCreate(Sender: TObject); 
begin 
 timer1.Enabled:=false; // -- Wieso nich per Objectinspector?
 
end


procedure TForm1.Button1Click(Sender: TObject); 
begin 
 timer1.Interval:=1000;// -- Wieso nich per Objectinspector?
 timer1.Enabled :=true;//Timer starten 

end


procedure TForm1.Timer1Timer(Sender: TObject); 
begin  
 if etwas.farbe = blau then etwas.farbe=grün else etwas.farbe=blau
end;


Ist einfacher :p
LorenzS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 128

MS-DOS, WIN 7, WIN 10
BP7.0, D3, D5
BeitragVerfasst: Di 25.12.07 23:35 
wie soll ich dir den object inspectoren denn hier darstellen, nicht jeder erstellst seinen Objecte grafisch
Jerk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 251

Vista Ultimate, Ubuntu
Turbo Delphi 2006
BeitragVerfasst: Di 25.12.07 23:46 
Daran hatte ich garnicht gedacht -.-
Avant Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Sa 29.12.07 14:53 
Seht euch die angehängten Dateinen (rar. Archiv) mal an.

Nur Doppelblitz und Wechselblitz funktionieren noch nicht ganz.

Bei Doppelblitz sollen beide Seiten zweimal aufblinken und einen kurzen Moment (zwei Takte) dunkel bleiben usw.

Bei Wechselblitz soll abwechselnd eine Seite zweimal blinken und solange dunkel sein, bis die andere Seite zweimal geblinkt hat.


Tipps (oder auch verbesserte Versionen) nehme ich gerne an.


Guten Rutsch

Avant
Einloggen, um Attachments anzusehen!
Avant Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Do 07.02.08 09:26 
Habs hinbekommen !!!

Also manchmal steh ich echt auf dem Kabel ^^

Hab einfach bei Timer eingegeben:

Farbstatus:=Farbstatus+1;
If Farbstatus=7 then begin Farbstatus:=1 end;


Trotzdem Danke an alle!