AGB  ·  Datenschutz  ·  Impressum  







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

Schleifenproblem mit Timer

Ein Thema von Mucki · begonnen am 23. Nov 2006 · letzter Beitrag vom 23. Nov 2006
Antwort Antwort
Benutzerbild von Mucki
Mucki

Registriert seit: 23. Jul 2006
82 Beiträge
 
Delphi 5 Standard
 
#1

Schleifenproblem mit Timer

  Alt 23. Nov 2006, 20:43
Guten Abend,
ich möchte folgendes (im übertragenem Sinne) schreiben,
Button1 zeigt ein Laben1 an, nach einer Zeit t,
soll dieses Label1 sich ändern.
Soweit so gut...

Dieser Vorgang soll in einer for-Scleife gepackt werden
und 10 mal wiederholt werden.
Aber leider bleibt das Programm bei

procedure TForm1.Timer1Timer(Sender: TObject)

hängen und meldet: Anweisung erwartet aber procedure gefunden.

Kann mir jemand meinen Fehler nennen ?

Gruß Mucki

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Timer1: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  
implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
begin
   for i :=1 to 10 do
     begin
        label1.caption := 'jetzt gehts los...';
        timer1.enabled := true;
     

           procedure TForm1.Timer1Timer(Sender: TObject);
           begin
             Label1.caption := '...na also';
             timer1.enabled := false;
           end;
     end;
end;

end.
Alles bleibt anders !
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Schleifenproblem mit Timer

  Alt 23. Nov 2006, 20:55
.Timer1Timer muß außerhalb von .Button1Click implemnetiert werden
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Mucki
Mucki

Registriert seit: 23. Jul 2006
82 Beiträge
 
Delphi 5 Standard
 
#3

Re: Schleifenproblem mit Timer

  Alt 23. Nov 2006, 21:10
Ich möchte, dass sich
Label1 := jetzt gehts los
dann eine Pause über die Zeit von timer1
und dann Label1 := na also
10 x abwechselt.
Alles bleibt anders !
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Schleifenproblem mit Timer

  Alt 23. Nov 2006, 21:13
Ist schon klar, aber die Methode für den Timerevent muß trotzdem aus der anderen Methode raus.

Die Methode .Timer1Timer wird vom Timer am Ende der angegebenen Zeitperiode aufgerufen.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Mucki
Mucki

Registriert seit: 23. Jul 2006
82 Beiträge
 
Delphi 5 Standard
 
#5

Re: Schleifenproblem mit Timer

  Alt 23. Nov 2006, 21:22
Und wie kann ich das zum wiederholen bringen?
Alles bleibt anders !
  Mit Zitat antworten Zitat
Benutzerbild von thkerkmann
thkerkmann

Registriert seit: 7. Jan 2006
Ort: Pulheim Brauweiler
464 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Schleifenproblem mit Timer

  Alt 23. Nov 2006, 21:24
Hi,

versuchs mal so:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
   Timer1.enabled := true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
const
   zaehler:integer = 20;
begin
   if odd(zahler) then
      Label1.caption := '...na also'
   else
      Label1.caption := 'jetzt gehts los...';
      
   dec(zaehler);
   if zaehler <= 0 then
      Timer1.enabled := false;
end;
Zur Erläuterung:
der Button startet den Vorgang: Also im Formdesigner muss Timer1.enabled auf false stehen.

Die Timerroutine wird aufgerufen und setzt je nach zaehler den entsprechenden Text.
Wenn der zaehler auf 0 gezaehlt ist stoppt der Timer.

Gruss
Thomas Kerkmann
Ich hab noch einen Koffer in Borland.
http://thomaskerkmann.wordpress.com/
  Mit Zitat antworten Zitat
Benutzerbild von Mucki
Mucki

Registriert seit: 23. Jul 2006
82 Beiträge
 
Delphi 5 Standard
 
#7

Re: Schleifenproblem mit Timer

  Alt 23. Nov 2006, 21:37
Cool, danke.
Alles bleibt anders !
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:26 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