IPSStudio / Count Down / Farbe

Hallo,

ich verusche einen Count Down in IPSViews zu implementieren dabei soll das LabelVar immer die Schriftfarbe weiss haben und dann bei 2 gelb und bei 1 rot werden.

100 bis 3: weiss
2: gelb
1: rot

wie mache ich sowas ohne 100 Assotiationen anzulegen? In ProfilManager gibt es ja die moeglichkeit eines %d
Und in IPSViews?

Danke

Moin,

Assoziationen wären etwas umständlich :slight_smile: Du musst in Schichten denken und lediglich dafür sorgen, dass das gewünschte Icon angezeigt wird. Auf S. 122 der Dokumentation findest du die Beschreibung der Text Label. Dort siehst du, dass du die Farben per Fernsteuerung ändern kannst. Du musst also in Abhängigkeit deines Variablenwertes nur die entsprechenden Werte übergeben. Einfach mal ein bisschen damit experimentieren :wink:

Ein Beispiel kann ich dir im Moment nicht geben da unterwegs.

Gruß
Hans

Ich greif das mal nochmal auf, da ich hierfür noch immer etwas suche…

Ich stelle in einer Art Tabelle in IPSview Stromwerte dar.
Allerdings bekommt man bei der Menge an Einträgen Augenkrebs :stuck_out_tongue:
Daher möchte ich die Einträge hervorheben, die wirklich gerade etwas anzeigen.
Also Eintrag >= 0 dann rote Textfarbe, ansonsten normal
Kann ich nicht irgendwie in einem Variablenprofil deratiges anlegen?
Ich hab so ca. 100 Stromwerte, da will ich nicht für jede Variable etwas einzeln schreiben :slight_smile:

Danke Euch

Hallo,

du musst ja einfach nur abfragen wie groß der Wert ist und dann die Farbe entsprechend setzen. Bei einer Html Box könntest du die Zeile entsprechend hervorheben.

Da du aber ohnehin >= 0 abfragst, kannst du eigentlich auch gleich alle Werte rot einfärben, es sei denn, dass die Werte auch negativ sein können :smiley:

Gruß
Hans

Hi,
das dachte ich mir später auch schon, dass es am sinnvollsten wäre, generell z.B. auf rot zu setzen, und bei 0=schwarz
Nur… irgendwie bin ich zu blöd… :stuck_out_tongue: setze ich eine Assoziation bei der Variable im IPSstudio, will er nicht wechseln, d.h. bleibt immer auch schwarz.
Ich mache:
Textfarbe generell = rot
Assoziationen IP-Symcon Wert=0, Textfarbe schwarz, Text 0,000
egal, ob in die Variable etwas geliefert wird, oder nicht, es bleibt immer auf schwarz und 0,000

Hallo,

ich glaube, dass du mich nicht richtig verstanden hast. Wenn du >= 0 abfragst dann würde alles rot sein bis auf negative Werte :slight_smile:

Zum Problem: bitte mache Hardcopies vom Objektbaum wo die Variablen dargestellt werden und von den Assoziationen und den Eigenschaften damit man überhaupt erkennen kann, was bereits vorhanden ist.

Lösen lässt sich das Problem auf jeden Fall :wink:

Gruß
Hans

Ahh Du hast Recht :slight_smile: Sollte natürlich heißen:
0 = Weiß bzw. Standard Farbe
0>Alles Rot
Im Anhang ein screenshot, also im Grunde bisher nur Standard
Mir gehts um die Ampere Werte, die sich einfärben sollen

Guten Morgen,

so wie du dir das vorstellst funktioniert es leider nicht :eek: Wenn ich das richtig intepretiere war deine Hoffnung, dass du einfach 2 Assoziationen für das Variablen Label bildest, die dann rot oder weiß automatisch darstellen. Hier http://docu.brownson.at/ipsstudio/webhelp/#DesignerControlsTypeVariableLabel.html in der Dokumentation findest du die Erklärung für die Assoziationen;

Assoziationen
Hier können Sie festlegen, dass bestimmte technische Werte von IP-Symcon benutzerfreundlich angezeigt werden sollen
(z.B. 0=Ausgeschaltet und 1=Eingeschaltet bei einer Leuchte).
(Anmerkung für Techniker: Es sind Key/Value-Paare, mit denen Integer- und Boolean-Werte übersetzt werden können.)

Die Lösung für dein Problem ist mit einem gewissen Aufwand verbunden und befindet sich in der Rubrik Fernsteuerung. D. h. du musst für jede angezeigte Variable eine weitere ‚Variable Textfarbe‘ vom Typ String anlegen. Dann musst du ein Skript erstellen, welches bei Änderung der Variablen aufgerufen wird und die zugehörige ‚Variable Textfarbe‘ dann gemäß deinen Wünschen setzt. Dabei solltest du noch beachten, dass das Skript nur aktiviert wird, wenn es zu einem Farbwechsel kommen soll also nicht, wenn der Wert sich von 0,1 auf 0,2 ändert. Einen anderen Weg weiß ich leider nicht.

Gruß
Hans

Puh, ich danke Dir.

Dann Baue ich lieber die Visu um, bevor ich diesen act betreibe :smiley:

Ich hatte es schon fast vermutet, dass ich 1:1 Beziehungen herstellen müsste.
Vielleicht fällt mir noch etwas anderes ein, um Werte aus einer Liste ab bestimmten Werten sichtbare zu machen

Moin,

ja, eine 1:1 Beziehung braucht man natürlich, da ja jeder Wert separat dargestellt wird. Ich habe derartige Konstruktionen bei mir an diversen Stellen und wenn man Übung hat ist das vergleichsweise schnell gemacht.

Technisch könnte man auch 2 Felder übereinander legen und dann verstecken - nur die Mimik ist dann entsprechend :slight_smile:

Gruß
Hans

Wenn es nur darum geht den Wert bei größer 0 in Rot darzustellen, dann ist das aber mit Assoziationen schon möglich.

2 Assoziationen:
Wert=0, Text=%d, Textcolor=White
Wert=0.001, Text=%d, Textcolor=Red

Und keine Textfarbe beim VarLabel setzen.

Hallo,

@Highnoon ja, die Methode von Andreas sollte tuntkionieren und du müsstest nichts programmieren - ich hatte diese Variante übersehen da erst neu in der Beta :slight_smile:

@Andreas Kann es sein, dass wenn man ALLE Betas einsetzt es ein Komma - Punkt Problem gibt. Gebe ich den Wert 0,001 in Variable ein, so werden trotz Definition von 3 oder 4 NK-Stellen nur ganze Zahlen in der View angezeigt. Lösche ich die Assoziationen dann werden auch die NK-Stellen wieder angezeigt.

Gruß
Hans

Verstehe ich noch nicht ganz - der eingegebene Wert bestimmt ja nur die „Grenze“ für die Assoziation, die Anzeige wird vom Text gesteuert?

Hallo Andreas,

0.001 kann man nicht eintragen sondern nur 0,001 :slight_smile: Wenn ich das mache und %d als Text dann bekomme ich unter IOS keine Nachkommastellen angezeigt, wenn der Wert der Float Variable z. B. 0,234 ist. Die Steuerung der Farbe funktioniert. Also white bei null und red bei > 0, wobei bei 0,001 dann Null angezeigt wird und die Farbe logischerweise white ist. Erst ab 0,5 wird auf 1 aufgerundet und die Farbe ist rot.

Gruß
Hans

Hallo,

nun habe ich die Lösung gefunden, da ich mal bei IP-Symcon in die Doku hier https://www.symcon.de/service/dokumentation/vorgehensweisen/variablenprofile-verwenden/beispiel1/ geschaut habe.

Man muss %.3f als Text der beiden Assoziationen eingeben und schon klappt es auch mit den Nachkommastellen :smiley: Ich vermute f steht für float während d für digit steht. Vielleicht kann Andreas da ja nochmal was zu sagen.

Gruß
Hans

das ist korrekt und das hab ich sogar dokumentiert :smiley:

http://docu.brownson.at/ipsstudio33/webhelp/#DesignerPropertiesAssociationEditor.html

Super, funktioniert :slight_smile:

Ich habe es jetzt einfach so in den Assoziationen des Profils in IP-Symcon direkt eingetragen, damit ich in meiner Visio nur die Synchronisation aktivieren mußte
Zwar wird jetzt der Wert rot hinterlegt, und nicht die Schrift eingefärbt, aber das ist mir in diesem Fall Banane. denn Hauptsache die Werte stechen raus :slight_smile: