Eingabewert in z.B. globale Variable schreiben

Betrieb der FHZ-Zentralen mit contronics homeputer Standard / homeputer Studio & WEB-Server

Moderator: Co-Administratoren

Antworten
Benutzeravatar
turbojoey
Beiträge: 94
Registriert: 19.05.2010, 11:41

Eingabewert in z.B. globale Variable schreiben

Beitrag von turbojoey » 25.10.2010, 22:19

Hi Leute,
ich würde gerne ein Zahlenfeld (Objekt) definieren mit z.B. NAchtabsenkung. WEnn ich in diesem Zahlenfenster eine Zahl auswähle z.b. 14 würde ich diese Zahl gerne in eine Variable schreiben mit welcher ich dann schließlich alle meine Raumregler füttere :-)

Hab mal versucht ein Objekt "Zahl" zu definieren...kriege es aber nicht hin, dass die ausgewählte Zahl einer Variablen zugeordent wird...

Vielen Dank schon für Eure Hilfe..

Grüße,

TJ

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Eingabewert in z.B. globale Variable schreiben

Beitrag von buempi » 26.10.2010, 08:32

Hallo TJ

Wenn du mit "auswählen" eine ComboBox (SelectBox) meinst, muss ich dich enttäuschen. Das gibt's bei Homeputer nicht.

Wenn du aber "reinschreiben" meinst: Warum willst du die Zahl, die du ins Zahlenobjekt schreibst auch noch in einer Variablen haben? Das geht natürlich schon: Einfach im Zahlen-Objekt "Ausführen bei Eingabe" aktivieren und dann im Makro

Code: Alles auswählen

ZahlenVariable := ZahlenObjekt
RaumreglerA    := ZahlenVariable
RaumreglerB    := ZahlenVariable
** usw.
Genauso gut kannst du den Raumreglern aber auch gleich den Werte des Zahlen-OJEKTES zuweisen. Übrigens: Nur Objekte sind "globale" Variablen; innerhalb von Objekten definierte Variablen sind "private/lokale" Variablen.

Es gibt übrigens noch die Funktione EINGABE(). Die kannst du z.B. in einem Knopf verwenden:

Code: Alles auswählen

Eingabe("Neue Temperatur eingeben!",ZahlenVariable)
warte("00:00:10")
RaumreglerA    := ZahlenVariable
RaumreglerB    := ZahlenVariable
** usw.
Das WARTE() ist nötig, weil die Anwendung nicht "stehen bleibt", während du das Eingabefeld ausfüllst. Es muss genügend lang bemessen sein, damit du den Wert eintragen und OK klicken kannst. Sonst werden die Anweisungen nicht ausgeführt!

Viele Grüsse
Bümpi

Benutzeravatar
turbojoey
Beiträge: 94
Registriert: 19.05.2010, 11:41

Re: Eingabewert in z.B. globale Variable schreiben

Beitrag von turbojoey » 26.10.2010, 19:42

Coool :-)
Ou mann...eigentlich sooo einfach...tja...so langsam steig ich durch ;-)

Schade, dass es kein DropDown Menü wie beim Raumregler gibt..naja...zumindest gibts nen Schieberegler...kannst Du mir noch sagen, warum man dort eigentlich nur den Maxwert und nicht den Minwert einstellen kann? :-)

Viiielen Dank Bümpi...

Grüße,

TJ

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Eingabewert in z.B. globale Variable schreiben

Beitrag von buempi » 27.10.2010, 08:55

Hallo TJ
buempi hat geschrieben:ComboBox (SelectBox) [...] Das gibt's bei Homeputer nicht
Das stimmt nicht ganz. Du kannst eine eigene Typdefinition anlegen. Allerdings nicht mit einer Zahlenreihe, weil ausschliesslich Zahlen als Zustands-Bezeichnung nicht möglich sind. Auch Punkt oder Komma geht nicht. Und eine solche Zahlenreihe wirst du ja wohl kaum haben wollen:

Code: Alles auswählen

T180
T185
T190
usw.
Gemeint ist Temperatur 18,0 usw. - Du könntest aber z.B. so was machen:

Code: Alles auswählen

Urlaub
Reduziert
Normal
Wenn du nun ein neues Objekt erstellst und diesem deine Typdefinition zuweist, musst du bei den allgemeinen Einstellungen noch "Wertemenü bei Maus-Klick" und "Textrahmen" sowie "Ausführen bei Eingabe" aktivieren. Dann wird im Normalzustand ein Textrahmen angezeigt; sobald du darauf klickst eine Auswahlbox mit den möglichen Zuständen.

Im Makro schreibst du dann für jede mögliche Option einen WENN-Block:

Code: Alles auswählen

wenn AuswahlObjekt = "Reduziert" dann
   RaumreglerA    := 18,5
   RaumreglerB    := 18,5
   ** usw.
endewenn
turbojoey hat geschrieben:zumindest gibts nen Schieberegler...kannst Du mir noch sagen, warum man dort eigentlich nur den Maxwert und nicht den Minwert einstellen kann?
Nein, ist mir eigentlich auch unverständlich. - Schreib doch einen Wunsch in die Bugs und Updatewünsche! Optimal wäre es, wenn man nicht nur Minimum/Maximum sondern auch das Inkrement (Schrittweite) angeben könnte, damit auch z.B. halbe Grade möglich wären.

Viele Grüsse
Bümpi

Benutzeravatar
turbojoey
Beiträge: 94
Registriert: 19.05.2010, 11:41

Re: Eingabewert in z.B. globale Variable schreiben

Beitrag von turbojoey » 28.10.2010, 12:55

vielen dank.gute Idee...mal sehen ob ich am wer zum ausprobieren komme...

grüße zu

Antworten

Zurück zu „homeputer Studio / Standard: allgemeine Fragen“