AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Timereigenschaften in selbsterstellter procedure ändern
Thema durchsuchen
Ansicht
Themen-Optionen

Timereigenschaften in selbsterstellter procedure ändern

Ein Thema von ISAS · begonnen am 29. Mai 2004 · letzter Beitrag vom 29. Mai 2004
Antwort Antwort
Benutzerbild von ISAS
ISAS

Registriert seit: 24. Sep 2003
Ort: Vietnam
205 Beiträge
 
Delphi 4 Standard
 
#1

Timereigenschaften in selbsterstellter procedure ändern

  Alt 29. Mai 2004, 18:52
Ich glaube, dass leichteste wäre, das ganze einfach mit Quellcode zu erklären und deshalb werd ich das jetzt auch so machen :

Delphi-Quellcode:
TKuken = class(TImageSprite)
  Public
    Constructor Create(aparent:Tsprite);override;
    Procedure right;
  end;
Es geht um Procedure right, welche später so aussieht:

Delphi-Quellcode:
procedure TKuken.right;
begin
Timer1.enabled:=true;
end;
Wenn ich das nun starten will, dann kommt die Fehlermeldung und die Zeile wird rot makiert :
[Fehler] Unit1.pas(170): Undefinierter Bezeichner: 'Timer1'

Habe auch schon probiert, einfach Procedure right(Sender: TObject) bei TKuken zu schreiben, hat aber trotzdem nicht geklappt.

Wie kann ich also den Timer in eine selbsgeschriebene procedur einbinden??

PS: Habe es auch schon das versucht:

Delphi-Quellcode:
procedure TKuken.right;
var Timer1:TTimer;
begin
Timer1.enabled:=true;
end;
Aber dann kommt folgende Nachricht:
[Warnung] Unit1.pas(172): Variable 'Timer1' wurde wahrscheinlich nicht Initialisiert
Signatur wurde auf Wunsch geändert. Deswegen einfach hier drauf klicken-> www.geggi.at.gg
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Timereigenschaften in selbsterstellter procedure ändern

  Alt 29. Mai 2004, 19:00
du hast ja timer1 auch nicht definiert
Delphi-Quellcode:
  TKuken = class(TImageSprite)
  private
    Timer1: TTimer;
  Public
    Constructor Create(aparent:Tsprite);override;
    Procedure right;
  end;
und im constructor dann noch
Delphi-Quellcode:
Timer1 := TTimer.Create;
[...]
und im Destructor dann
Timer1.Free;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Timereigenschaften in selbsterstellter procedure ändern

  Alt 29. Mai 2004, 19:01
Probier's mal mit Form1.timer1.enabled aus.
Aber: Sowas ist nicht gerade schön. Um nicht zu sagen ziemlich hässlich. Falls du jemals wieder diese Procedure benutzen willst (oder jemandem geben willst) wirst du sie (fast) nie benutzen können, da du dann immer eine Komponente mit diesem Namen auf einem Formular mit diesem Namen bräuchtest. Also übergib der Procedure lieber einen Timer, dessen Namen du dann immer wenn du diese Procedure nutzt, ändern kannst, also sowas:
Delphi-Quellcode:
TKuken = class(TImageSprite)
  Public
    Constructor Create(aparent:Tsprite);override;
    Procedure right(timer: Ttimer);
  end;
// ungeteste, sollte aber funzen
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von ISAS
ISAS

Registriert seit: 24. Sep 2003
Ort: Vietnam
205 Beiträge
 
Delphi 4 Standard
 
#4

Re: Timereigenschaften in selbsterstellter procedure ändern

  Alt 29. Mai 2004, 20:01
Danke, die Antworten sind ja ziemlich schnell gekommen.
Hab zurest herumprobiert beim ertsen Vorschlag herumprobiert, aber irgendwie hats nie so richtig geklappt. Zum Starten ist es meistens, wenn ich was verändert habe, gegangen, aber irgendeine Fehlermeldung kam immer.

Dann hab ich einfach die 2 Lösung mit Form1.Timer1.... versucht und es ging. An das habe ich gar nicht gedacht, aber wie heisst es so schon. Die einfachste Lösung ist immer die Beste!!
Signatur wurde auf Wunsch geändert. Deswegen einfach hier drauf klicken-> www.geggi.at.gg
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Timereigenschaften in selbsterstellter procedure ändern

  Alt 29. Mai 2004, 20:37
Das mit Form1.Timer1. ist sicher nicht die Beste Lösung aus den o.g. Gründen. Übergib lieber den gewünschten Timer als Parameter und bearbeite ihn dann.
Delphi-Quellcode:
TKuken = class(TImageSprite)
  Public
    Constructor Create(aparent:Tsprite); override;
    Procedure right(timer: Ttimer);
  end;
.
.
procedure TKuken.rigth(timer: Ttimer);
begin
timer.enabled:=true;
end;
.
.
//aufrufen:
VarTKuken.right(Form1.Timer1);
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  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 03:24 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