AGB  ·  Datenschutz  ·  Impressum  







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

Variable Timer

Ein Thema von FGD · begonnen am 16. Mai 2008 · letzter Beitrag vom 17. Mai 2008
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#11

Re: Variable Timer

  Alt 16. Mai 2008, 21:28
Achso, wenn du die Timer dann ansprechen möchtest, müsstest du über Delphi-Referenz durchsuchenFindComponent gehen.

Nachtrag: Dein Array ist im Prinzip dann überflüssig.

Ansprechen kannst du sie so. Das setzt voraus, dass die Timer "Timer1", "Timer2", ... heißen. Sie müssen einen fortlaufenden Index besitzen.

FindComponent('Timer' + IntToStr(NR)) as TTimer).Enabled := ...
  Mit Zitat antworten Zitat
FGD

Registriert seit: 3. Apr 2008
22 Beiträge
 
Delphi 7 Personal
 
#12

Re: Variable Timer

  Alt 16. Mai 2008, 22:05
Zitat von Matze:
FindComponent('Timer' + IntToStr(NR)) as TTimer).Enabled := ...
Ist das so gemeint:
(FindComponent('Timer' + IntToStr(NR)) as TTimer).Enabled := false;
Fehlermeldungen des Compilers
Code:
[Fehler]: Undefinierter Bezeichner: 'FindComponent'
Code:
[Fehler]: Operator ist auf diesen Operandentyp nicht anwendbar*
*bei Markierung zwischen TTimer).Enabled
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#13

Re: Variable Timer

  Alt 16. Mai 2008, 22:10
Ja genau, ich habe die erste Klammer vergessen, sorry. FindComponent ist in der Unit Classes definiert, die Delphi automatisch einbinden sollte (sie müsste in den uses stehen).

Bei mir funktioniert der Code.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#14

Re: Variable Timer

  Alt 17. Mai 2008, 02:48
FindComponent ist nicht wirklich einfach so in Classes deklariert, sondern der Vorfahre der Klassen, die Komponenten beinhalten können ist in Classes deklariert. In diesem Fall soll wohl Form1.FindComponent() gemeint sein, was du in einer klassenlosen Funktion auch voll qualifizieren musst. Da das aber reichlich unschön, und an der OOP vorbei ist, empfehle ich die Funktion zu einer Methode deines Formulars zu machen. Dort wird implizit "self" referenziert, und du kannst unqualifiziert FindComponent() benutzen, bzw. sollte man es dort dann auch tunlichst!
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
FGD

Registriert seit: 3. Apr 2008
22 Beiträge
 
Delphi 7 Personal
 
#15

Re: Variable Timer

  Alt 17. Mai 2008, 11:13
Zitat von Medium:
In diesem Fall soll wohl Form1.FindComponent() gemeint sein, was du in einer klassenlosen Funktion auch voll qualifizieren musst.
Das Form1 hat gefehlt.
Zitat von Medium:
Da das aber reichlich unschön, und an der OOP vorbei ist, empfehle ich die Funktion zu einer Methode deines Formulars zu machen. Dort wird implizit "self" referenziert, und du kannst unqualifiziert FindComponent() benutzen, bzw. sollte man es dort dann auch tunlichst!
Methoden muss ich mir noch angucken.

Es ist schön wie schnell einem hier geholfen wird
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#16

Re: Variable Timer

  Alt 17. Mai 2008, 11:17
Zitat von FGD:
Zitat von Medium:
Da das aber reichlich unschön, und an der OOP vorbei ist, empfehle ich die Funktion zu einer Methode deines Formulars zu machen. Dort wird implizit "self" referenziert, und du kannst unqualifiziert FindComponent() benutzen, bzw. sollte man es dort dann auch tunlichst!
Methoden muss ich mir noch angucken.
Du musst die Prozedur im private-Abschnitt der Form deklarieren. Siehe #7.
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#17

Re: Variable Timer

  Alt 17. Mai 2008, 11:19
Prozedur:
Delphi-Quellcode:
procedure SayHello;
begin
  ShowMessage('Hello World');
end;
Methode:
Delphi-Quellcode:
type
  TFormWuppdi = class(TForm)
  ...
  private
    procedure SayHello;
  ...
  end;

...

procedure TFormWuppdi.SayHello;
begin
  ShowMessage('Hello World');
end;
[edit] Zu langsam, dafür ausführlicher *gg* [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 14:32 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