Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   Dauerschleife während Button (https://www.delphipraxis.net/174040-dauerschleife-waehrend-button.html)

Emerold 29. Mär 2013 19:17

AW: Dauerschleife während Button
 
ich hab die dauerschleife aufgrund eines Tippes oben schon mit es etwas anderem ausgetauscht.
Projekt sieht jetzt schon so aus:

Delphi-Quellcode:
//Steuerung: Hoch
procedure TForm1.Button2MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Timer1.Enabled := true;
end;

procedure TForm1.Button2MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
   Timer1.Enabled := false;
end;  

//Konsole für Hoch
procedure TForm1.Timer1Timer(Sender: TObject);
begin
   Label1.Top := Label1.Top - 10;
end;  

//Konsole bei Start
procedure TForm1.FormCreate(Sender: TObject);
begin
  timer1.enabled := false;
  timer2.enabled := false;
  timer3.enabled := false;
  timer4.enabled := false;
end;
Ich habe hier jetzt die anderen Richtungen mal weggelassen :)
Und wie schon gesagt, ich kann beim Interval eintragen was ich will, da verändert sich nichts an der Geschwindigkeit des Ticks. Ob ich da 10 - 100 - 1000 - 10000 Eintrage ist egal.
Fehler bei Lazarus in meiner Version kann nicht sein, oder?

Aphton 29. Mär 2013 19:23

AW: Dauerschleife während Button
 
Inwiefern weicht es von deiner Erwartung ab?

Beim draufklicken (und halten) auf Button wird der Timer aktiviert und es wird periodisch die Position verändert... solange bis die Maustatste auf dem Button losgelassen wird und somit der Timer deaktiviert wird.

Emerold 29. Mär 2013 19:27

AW: Dauerschleife während Button
 
das klappt ja auch alles wunderbar :)

Meine Nachfrage war dann eben noch (steht irgendwo auf Seite 1 =P) wie ich die Tickgeschwindigkeit verändern kann, da es bei mir irgendwie nichts bringt, die Interval Eigenschaft zu verändern :)


Edit:
Moment, habe nochmal eine Idee. Ich versuch es kurz ^^

Edit:
Oke, Problem gelöst. Der Objektinspektor scheint wohl buggy zu sein. Wenn ichs im Quelltext beim Start verändete funktioniert es endlich :D Danke an all eure Hilfe und für die Geduld. Endlich kanns losgehen mit meinem Spielchen :)

Aphton 29. Mär 2013 19:32

AW: Dauerschleife während Button
 
Ich habe den Ablauf deswegen beschrieben, weil ich vermute, dass du denkst, es hat sich mit einem klick getan.

Setz mal das Itnerval auf 10 und klick auf den Button lass aber nicht los.. sag mir dann obs geklappt hat.. Falls ja, dann lies nochmal genau was ich geschrieben habe >.>

Emerold 29. Mär 2013 19:42

AW: Dauerschleife während Button
 
das mit dem Button nicht loslassen, war mir schon die ganze Zeit klar :D
Habe ja oben auch schon geschrieben, dass mein Problem gelöst ist. Der Übernimmnt es nur nicht aus dem Objektinspektor. Aber wenn ich es ins FormCreate eintrage klappt es.

Meine Danksagung steht oben ja auch schon :D

Freundlichste Grüße, der Eme

Medium 29. Mär 2013 23:01

AW: Dauerschleife während Button
 
Könnte es sein, dass du eventuell 2 (oder mehr) Timer hast, und das Intervall im OI bei einem nicht mit dem Event im Code verbundenen geändert hast? Mit etwas Pech (lies: wenn Formular-File und .pas unterschiedliche Komponenten beinhalten) sind die auf dem Formular sogar nichtmals sichtbar. Schau am einfachsten mal auf die Eigenschaft "Name" wenn du deinen Timer im OI angewählt hast (sollte "Timer1" sein), und ob auf der Ereignis-Seite auch deine Prozedur "Timer1Timer" unter "OnTimer" eingetragen ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:48 Uhr.
Seite 2 von 2     12   

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