Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wie kann ich "repeat-schleifen" parallel ablaufen lassen? (https://www.delphipraxis.net/77526-wie-kann-ich-repeat-schleifen-parallel-ablaufen-lassen.html)

Bibi2211 20. Sep 2006 19:22


Wie kann ich "repeat-schleifen" parallel ablaufen
 
Hallo Leute,
ich brauche eure Hilfe,
wir arbeiten in der Schule(Klasse 11) jetzt mit Delphi, mit der SuM(Stifte und Mäuse) Version.
Ich habe ein Programm für eine Uhr geschrieben. Die einzelnen Zeiger kann ich jeweils im richtigen Takt ablaufen lassen, aber nicht parallel.
Kann mir einer sagen wie ich drei repeat-Schleifen parallel ablaufen lassen kann?

Wäre für eure Hilfe sehr dankbar
Bibi

Nikolas 20. Sep 2006 19:24

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
Herzlich Willkommen in der DP :party:

Mit einfach Mitteln erst mal nicht. Wie sehen denn deine Schleifen aus? Kannst du sie nicht zu einer Schleife zusammenpacken?

mkinzler 20. Sep 2006 19:28

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
Warum machst du das mit Schleifen? Der Einsatz von Threads wäre u.U. zu überlegen.

fwsp 20. Sep 2006 19:29

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
Zitat:

Zitat von Bibi2211
wir arbeiten in der Schule(Klasse 11) jetzt mit Delphi

to mkinzler: das dürfte ein wenig übertrieben sein.

mkinzler 20. Sep 2006 19:32

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
Zitat:

to mkinzler: das dürfte ein wenig übertrieben sein.
Für dieses Problem gebe ich dir Recht. Da die Zeiger ja auch noch vonanderer abhängen, macht die Sache ja noch leichter.

SirThornberry 20. Sep 2006 19:42

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
für was hast du überhaupt schelifen? Was versuchst du mit den Schleife zu bewerkstelligen? Solange wir nicht wissen was die schleifen machen können wir dir zwar tipps geben wie man sie gleichzeitig laufen lassen kann, aber eventuell wäre eine alternative angebrachter.

Bibi2211 20. Sep 2006 20:33

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
Hallo,

im Moment habe ich vier repeat-Schleifen:
Eine mit der die Uhr mit ihren Einheiten gezeichnet wird,
dann für jeden der drei Zeiger ein Schleife, um die Zeiger im richtigen Takt laufen zu lassen
(Alerdings bis jetzt jeden Zeiger unabhängig von den anderen, sie sind noch nicht aufeinander abgestimmt)
Nun laufen die Zeiger zwar im richtigen Takt, aber immer nur jeder Zeiger nach dem anderen. Ich habe keine drei Zeiger gleichzeitig.
Die Zeiger habe ich zum Laufen gebracht, in dem ich eine procedure pause eingefügt habe(in der der PC bis zu einem bestimmten Wert zählt, und dann erst weiterläuft)nach der Pause werden die Zeiger wegradiert und versetzt(im entsprechendem Taktabstand)neu gezeichnet.

Ich kann das Programm morgen auch als Datei anhängen/hierein kopieren, heute geht es nicht mehr.

Schon mal danke für alle Hilfe im voraus
Bibi

SirThornberry 20. Sep 2006 20:36

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
du nimmst also die schleifen unter anderem um die urzeiger zu verrücken? Wenn dem so ist würde ich einen Timer für dieses vorhaben empfehlen.

fwsp 20. Sep 2006 20:36

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
warum braucht man 3 schleifen für die 3 zeiger?
es gibt doch nur eine uhrzeit in dessen abhängigkeit alle zeiger stehen?
bei 19:45:56

steht zeiger1 auf 19, zeiger2 auf 45 und zeiger3 auf 56.

bei 19:45:57 muss doch nur zeiger3 geändert werden, mit einigen mod und div sollte man doch auskommen, und einem Timer.

gordon freeman 20. Sep 2006 21:48

Re: Wie kann ich "repeat-schleifen" parallel ablau
 
Hi Bibi,
erstmal herzlich Willkommen in der DP :dp:
wir haben in der Schule auch mit mSuM gearbeitet. eventuell als Info für die anderen:

Hier kann die normale VCL nicht verwendet werden, d.h. jeder Ansatz über Threads, Timer, sonstiges fällt weg, man ist extrem beschränkt auf den Funktionsumfang der mSuM.

Ansonsten kann ich dir auch nur dazu raten, was fwsp schon vorgeschlagen hat:
Du zeichnest alles in einer Repeat-Schleife:
- in jeder Schleife die Uhr
- in jeder Schleife den Sekundenzeiger einen Klick weiter
- in jeder 60ten Schelife den Minutenzeiger einen Klick weiter
- in jeder 3600ten Schleife den Stundenzeiger einen weiter

Darauf will dein Lehrer auch hinaus, ist eine der Standard-Aufgaben. Probier einfach mal ein bisschen rum, wenn du nicht weiterkommst, poste deinen Code einfach hier im Forum mit Angabe der Stelle, wo du ein Problem hast, dann wird dir geholfen werden.

mfg, Martin


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:55 Uhr.
Seite 1 von 2  1 2      

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