Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Mehrere Aktionen hintereinander (https://www.delphipraxis.net/58306-mehrere-aktionen-hintereinander.html)

DelphiManiac 5. Dez 2005 12:32


Mehrere Aktionen hintereinander
 
Hallo,

ich habe ein Problem bei der Realisierung eines Tools. Vielleich könnt ihr mir ja helfen.
Ich habe ein Gerät, dass Druck misst und muss alle 100 ms das Gerät abfragen, hier habe ich schon
eine Funktion.
Es gibt aber mehrere Werte (Funktionen) die ich Auslesen muss. D.h.: ich lese dauernd Werte aus (per Timersteuerung),
nun hab ich ein Problem, wenn ich z.b.: Werte an das Gerät schreiben will, hier versuche ich nun den Timer.enabled:=off zu
setzen. das klappt aber nicht immer. Gitb es denn dafür eine geignetere Lösung?

Nochmal zusammenfassend:
ich habe:
- mehrere Funktionen, die das Gerät abfragen in 100ms Taktzyklen
- ich muss je nach geöffneter Maske verschiedene Werte abfragen
- bei einem Schreibbefehl (klick auf einen Button) muss dieser Zyklus unterbrochen werden und wieder gestartet

Kann man hier Actionlist oder Stringslists nehmen?
Bin noch recht neu dabei mit Delphi, aber freue mich schonmal, dass es hier eine so gute Community gibt.
Danke schon mal für eure Antworten.

ichbins 5. Dez 2005 13:18

Re: Mehrere Aktionen hintereinander
 
Willkommen in der Delphi Praxis! :party:

Der Timer wird automatisch unterbrochen während eine Funktion läuft. Es sei denn du verwendest währenddessen
Delphi-Quellcode:
application.processmessages;
Du könntest auch eine globale boolean-Variable verwenden in der du speicherst ob der Timer ausgeführt werden soll. Wenn auf den Button geklickt wurde (am Anfang der Buttonclick-Prozedur), setzt du sie auf false, am Ende auf true. In der form.create auch auf true setzen. In der Ontimer-Funktion kannst du dann abfragen ob die Variable true ist, und ansonsten abbrechen.

MarcoWarm 5. Dez 2005 13:29

Re: Mehrere Aktionen hintereinander
 
Du könntest bei so einer zeitkritischen Unternehmung vielleicht lieber Threads benutzen. Timer sind zwar einfacher zu handhaben aber doch recht ungenau.

DelphiManiac 5. Dez 2005 13:46

Re: Mehrere Aktionen hintereinander
 
Danke für eure Antworten

@MarcoWarm:
Wie funktioniert das denn mit den Threads? Hast du da evtl. Erfahrungen oder kennst du ein Tutorial?

Thx

mumu 5. Dez 2005 13:48

Re: Mehrere Aktionen hintereinander
 
naja ich glaub luckies thread tutorial ist hier bestimmt schon 100 mal verlinkt worden:
http://www.luckie-online.de

Sharky 5. Dez 2005 13:52

Re: Mehrere Aktionen hintereinander
 
Zitat:

Zitat von ichbins
...Der Timer wird automatisch unterbrochen während eine Funktion läuft. ...

Hai ichbins,

wo hast Du denn diese "Information" her? Warum soll der Timer unterbrochen werden wenn irgendeine Funktion läuft?


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 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