AGB  ·  Datenschutz  ·  Impressum  







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

Lazarus-Timer-Fahrstuhl

Ein Thema von Furby123 · begonnen am 12. Jun 2018 · letzter Beitrag vom 14. Jun 2018
Antwort Antwort
Furby123

Registriert seit: 12. Jun 2018
5 Beiträge
 
#1

Lazarus-Timer-Fahrstuhl

  Alt 12. Jun 2018, 12:52
Hallo, ich bin gerade dabei mit Lazarus ein Fahrstuhl zu programmieren.
Nun folgendes Problem, ich kann den Fahrstuhl nur von Etage zu Etage springen lassen (indem ich ihm die Pixel sage). Ich würde aber genre dass der fährt. Aber wenn er fährt krieg ich ihn nicht mehr angehalten.

Weiß jemand wie das funktioniert?

Geändert von Furby123 (12. Jun 2018 um 18:22 Uhr)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.739 Beiträge
 
Delphi 6 Enterprise
 
#2

AW: Lazarus-Timer-Fahrstuhl

  Alt 12. Jun 2018, 13:20
Du kannst den Code etwas lesbarer machen, indem du ihn hier in [ delphi][/ delphi] Tags einschließt (ohne das Leerzeichen).

Zum Problem: Du must in der Timer-Funktion eine Abfrage einbauen, ob das Ziel erreicht wurde.
Ralph
  Mit Zitat antworten Zitat
Furby123

Registriert seit: 12. Jun 2018
5 Beiträge
 
#3

AW: Lazarus-Timer-Fahrstuhl

  Alt 12. Jun 2018, 13:26
Du kannst den Code etwas lesbarer machen, indem du ihn hier in [ delphi][/ delphi] Tags einschließt (ohne das Leerzeichen).

Zum Problem: Du must in der Timer-Funktion eine Abfrage einbauen, ob das Ziel erreicht wurde.
Ja das weiß ich auch, aber ich weiß nicht wie...
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.809 Beiträge
 
Delphi 12 Athens
 
#4

AW: Lazarus-Timer-Fahrstuhl

  Alt 12. Jun 2018, 13:42
Hinfällig, kann weg. Sorry für den Bitmüll

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann

Geändert von Sherlock (12. Jun 2018 um 13:44 Uhr)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.739 Beiträge
 
Delphi 6 Enterprise
 
#5

AW: Lazarus-Timer-Fahrstuhl

  Alt 12. Jun 2018, 14:01
Am besten machst du dir erstmal eine Fahrstuhl-Klasse mit ein paar mehr Variablen, z.B. über den Zustand des Fahrstuhls (also steht der gerade oder fährt der und was ist momentan die Richtung und momentane Position. Dann eine Liste, wenn man so will einen Speicher, der gewünschten Etagen, Bsp.:

Fahrstuhl steht in Etage E. 3. Stock wird gedrückt. Es wird gesetzt:
3. Stock in Zielliste eintragen.
Da 3>E: Richtung: 1 = aufwärts
Timer starten, da sich aufzug in Bewegung setzt.

Timer löst aus:
Position um X erhöhen, da Richtung 1
Prüfen, ob mit der Position nächste Zieletage erreicht wurde, wenn ja Timer stoppen, Aufzugtür öffnen usw.

Während der Aufzug fährt wird auf einmal 2. Etage-Knopf gedrückt. Folge:
Neue Etage in Zielliste eintragen, da Richtung nach oben und Aufzuge derzeit z.B. noch zwischen E und 1 wird das Ziel 2. Etage vor dem Ziel 3. Etage eingetragen.

Timer löst wieder aus:
Position um X erhöhen, da Richtung 1
Prüfen, ob mit der Position nächste Zieletage (jetzt 2) erreicht wurde, wenn ja Timer stoppen, Aufzugtür öffnen usw. Wenn Aufzugstür schließt prüfen, ob noch ein Ziel vorliegt, dann dahin weiter fahren. usw.
Ralph
  Mit Zitat antworten Zitat
Furby123

Registriert seit: 12. Jun 2018
5 Beiträge
 
#6

AW: Lazarus-Timer-Fahrstuhl

  Alt 12. Jun 2018, 15:49
ich versuch nochmal was, hab gerade ne idee

Geändert von Furby123 (12. Jun 2018 um 15:56 Uhr)
  Mit Zitat antworten Zitat
14. Jun 2018, 08:23
Dieses Thema wurde am "14. Jun 2018, 08:23 Uhr" von "MrSpock" aus dem Forum "Lazarus (IDE)" in das Forum "FreePascal" verschoben.
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 04:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz