Sonstiges TcHMI TE2000 Zuweisung von UDINT Wert an Color

msauerpb

Level-1
Beiträge
200
Reaktionspunkte
7
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich würde gern über ein UDINT Variable aus der PLC die Farbe eine Controls einstellen. Wenn ich einfach nur so etwas schreibe:

Unbenannt.JPG

Dann funktioniert es nicht. Ich habe mir den Inhalt von LampColor[3] einfach mal in ein Textfeld ausgeben lassen. Darin steht dann auch der richtige Farbwert als Integer. Gibt es eine Möglichkeit die Farben auch so zu definieren?

Danke für Eure Hilfe.
gruss
martin
 
Darin steht dann auch der richtige Farbwert als Integer


Eine Farbe besteht aus einem Objekt mit einem String. Siehe seine Definition:

Code:
{
  "properties": {
    "color": {
      "description": "Defining a color as CSS color: #-hexadecimal, rgb(), rgba(), hsl(), hsla(), css color keyword, none or transparent.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "color"
  ],
  "type": "object",
  "id": "tchmi:framework#/definitions/SolidColor"
}
 
Ich verstehe nicht, wie du eine Farbe mit einem INT Zahlenwert beschreibst.
5 ist rot, 12 ist grün, 8 ist blau?
Schreib doch bitte was du für Zahlen da hast und was du möchtest, dass passieren soll.
 
In der "alten Visu" von TC3 habe ich den Farbcode als DWORD definiert:

Code:
red  : DWORD  := 16#FFFF0000;

sowie ja auch als Hex-Wert im CSS definiert ist. Diesen Wert würde ich gern jetzt direkt einer Fill Color zuweisen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du kannst dieses hier in deinem HTML hinzufügen:

Code:
<div id="TcHmiEllipse" data-tchmi-type="tchmi-ellipse" data-tchmi-height="75" data-tchmi-height-unit="px" data-tchmi-left="246" data-tchmi-left-unit="px" data-tchmi-top="273" data-tchmi-top-unit="px" data-tchmi-width="150" data-tchmi-width-unit="px">
    <script data-tchmi-target-attribute="data-tchmi-fill-color" type="application/json">
        {
        "color": "%f%FormatString('#{0|X}',   %i%mydword%/i%)%/f%"
        }
    </script>
</div>

Zum testen hab ich eine interne Variable mydword genutzt. Das Problem ist, dass dein Rot FFFF0000 nicht rot ist, sondern transparent da equivalent zu rgba(255, 255, 0, 0). Kommt aber so im Browser an.
 
Hallo,
ich habe genau das gleiche Problem. Möchte auch meine Variable WARN_COLOR : DWORD := 16#FF4F91FF; mit einem Objekt per Data Binding verknüpfen.

Ist das also so nicht möglich? Für was gibts es dann das Data Binding?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hab das eingefügt, aber wie kann ich auf die Variable zugreifen und was sagt mir dass ich damit die BackgroundColor ändere :confused::confused:
snap.jpg

Möchte bei der Ellipse die Farbe ändern. Da steht auch die Variable drin die ich bei Binding angegeben habe:

<div id="TcHmiEllipse" data-tchmi-type="tchmi-ellipse" data-tchmi-height="39" data-tchmi-height-unit="px" data-tchmi-left="708" data-tchmi-left-unit="px" data-tchmi-top="401" data-tchmi-top-unit="px" data-tchmi-width="42" data-tchmi-width-unit="px" data-tchmi-fill-color="%s%PLC1.GVL.nWARN_COLOR%/s%">
 
Zuletzt bearbeitet:
Ich dachte an so eine Anpassung:
Code:
    <div id="TcHmiEllipse" data-tchmi-type="tchmi-ellipse" data-tchmi-height="39" data-tchmi-height-unit="px" data-tchmi-left="708" data-tchmi-left-unit="px" data-tchmi-top="401" data-tchmi-top-unit="px" data-tchmi-width="42" data-tchmi-width-unit="px">


        <script data-tchmi-target-attribute="data-tchmi-fill-color" type="application/json">
            {
            "color": "%f%FormatString('#{0|X}', %s%PLC1.GVL.nWARN_COLOR%/s%)%/f%"
            }
        </script>
    </div>
 
Zurück
Oben