Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Timer enablen (https://www.delphipraxis.net/143079-timer-enablen.html)

Reap3r 9. Nov 2009 14:35


Timer enablen
 
Hi Leute!

Ich habe ein genz einfaches Problem.

Undzwar habe ich in einem Programm mehrere Timer.
Diese habe ich im Objektinspektor auf nicht enabled gestellt.
Wenn ich nun einen Button drücke sollen sie enabled werden!
Ich dachte immer, das ginge, doch es funktioniert nich!

Also im Button steht dann:

Delphi-Quellcode:
Form3.timer1.enabled:= true;
Was mache ich falsch?

turboPASCAL 9. Nov 2009 14:37

Re: Timer enablen
 
Ja, muss aber was anderes sein.

Klaus01 9. Nov 2009 14:39

Re: Timer enablen
 
Hi,

was funktioniert denn nicht?
Läuft Dein Timer nicht los?
Gibt der Compiler eine Fehlermeldung aus?

Grüße
Klaus

Reap3r 9. Nov 2009 14:41

Re: Timer enablen
 
Achso ja sry hab ich vergessen^^

Der Timer wird garnicht erst aktiviert!

Klaus01 9. Nov 2009 14:44

Re: Timer enablen
 
Zitat:

Zitat von Reap3r
Achso ja sry hab ich vergessen^^

Der Timer wird garnicht erst aktiviert!

Woran merkst Du das?

Zeige doch mal den Code der ausgeführt werden soll
wenn der Timer aktiviert ist.
Wie groß ist das Intervall?

Grüße
Klaus

Luckie 9. Nov 2009 14:46

Re: Timer enablen
 
Wenn der Code in einer Methode des selben Formulares steht, lass mal den Formularbezeicher weg.

Reap3r 9. Nov 2009 14:49

Re: Timer enablen
 
Der code sieht so aus:

Delphi-Quellcode:
procedure TForm3.Timer1Timer(Sender: TObject);
begin
  if form3.L1.Visible = true
  then begin form3.L1.visible := false;
  form3.Image1.Visible:= false;
  form3.Image2.Visible:= true;
  form3.L2.Visible:= true;
  end;
end;
auf form3 ist ein Image und ein Label zu sehen!(Image1/L1)
Diese sind auf visible:= true eingestellt.
Der Timer soll diese nun wenn zu sehen visible:= false schalten
und ein anderes Image und ein anderes Label visible:= true schalten.(Image2/L2).

Das intervall des Timers ist auf 9 sekunden festgelegt, damit das erste Image bzw. Label 9 Sekunden zu sehen ist,
und dann umgeschaltet wird.

Klaus01 9. Nov 2009 15:13

Re: Timer enablen
 
.. ändert sich etwas wenn Du es so umschreibst?

Delphi-Quellcode:
procedure TForm3.Timer1Timer(Sender: TObject);
begin
  if L1.Visible then
    begin
      L1.visible := false;
      Image1.Visible:= false;
      Image2.Visible:= true;
      L2.Visible:= true;
  end;
end;
Ansonsten stellen mal Deine Button.click Methode
hier ein.

Grüße
Klaus

p80286 9. Nov 2009 15:18

Re: Timer enablen
 
Delphi-Quellcode:
procedure TForm3.Timer1Timer(Sender: TObject);
begin
  if L1.Visible then
    begin
      L1.visible := false;
      Image1.Visible:= false;
      Image2.Visible:= true;
      L2.Visible:= true;
   
  end;
  application.processmessages; // <<<<<<<< Erweitern!! 
end;
man muß dem Programm auch die Chance geben Änderungen anzuzeigen.

Und mit F4 (Debugger)in die Timer-Methode gehen ob sie überhaupt aufgerufen wird.

Gruß
K-H

Reap3r 9. Nov 2009 15:24

Re: Timer enablen
 
Was Bringt mir application.processmessages;?
bzw. wie benutze ich es?

Und Klaus01 das verändert leider nichts!


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:39 Uhr.
Seite 1 von 3  1 23      

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