OH3 Widgets iconColor RGB Farben möglich ?

GUI Relevanten, PaperUI, BasicUI, HabPanel ...

Moderatoren: seppy, udo1toni

Antworten
dasSofa
Beiträge: 4
Registriert: 1. Jul 2021 11:30

OH3 Widgets iconColor RGB Farben möglich ?

Beitrag von dasSofa »

Hallo zusammen,

bin neu in Openhab und vor allem beim erstellen von Widgets. Nun habe ich ein eigenes Widget erstellt zur anzeige meiner Daten vom BME680 Sensors.

Code: Alles auswählen

uid: widget_Raumluft
tags: []
props:
  parameters:
    - context: item
      description: static IAQ
      label: static IAQ
      name: item_siaq
      required: false
      type: TEXT
    - context: item
      description: CO2
      label: CO²
      name: item_co2
      required: false
      type: TEXT
    - context: item
      description: bVoc
      label: bVoc
      name: item_voc
      required: false
      type: TEXT
timestamp: Dec 31, 2021, 3:51:51 AM
component: f7-card
config: {}
slots:
  content:
    - component: oh-label-card
      config:
        action: analyzer
        actionAnalyzerCoordSystem: time
        actionAnalyzerItems: =[props.item_siaq]
        item: =(props.item_siaq)
        icon: f7:wind
        iconColor: '=((Number.parseFloat(items[props.item_siaq].state) < 50) ? "green" : (Number.parseFloat(items[props.item_siaq].state) < 100) ? "lime" : (Number.parseFloat(items[props.item_siaq].state) < 150) ? "yellow" : (Number.parseFloat(items[props.item_siaq].state) < 200) ? "orange" : (Number.parseFloat(items[props.item_siaq].state) < 250) ? "red" : (Number.parseFloat(items[props.item_siaq].state) < 350) ? "purple" : "brown")'
    - component: oh-label-card
      config:
        action: analyzer
        actionAnalyzerCoordSystem: time
        actionAnalyzerItems: =[props.item_co2]
        item: =(props.item_co2)
        icon: material:co2
        iconSize: 40
        iconColor: '=((Number.parseFloat(items[props.item_co2].state) < 600) ? "green" : (Number.parseFloat(items[props.item_co2].state) < 800) ? "lime" : (Number.parseFloat(items[props.item_co2].state) < 1500) ? "yellow" : (Number.parseFloat(items[props.item_co2].state) < 1800) ? "orange" : "red")'
    - component: oh-label-card
      config:
        action: analyzer
        actionAnalyzerCoordSystem: time
        actionAnalyzerItems: =[props.item_voc]
        item: =(props.item_voc)
        icon: material:co2
        iconSize: 40
        iconColor: '=((Number.parseFloat(items[props.item_co2].state) < 600) ? "green" : (Number.parseFloat(items[props.item_co2].state) < 800) ? "lime" : (Number.parseFloat(items[props.item_co2].state) < 1500) ? "yellow" : (Number.parseFloat(items[props.item_co2].state) < 1800) ? "orange" : "red")'
Das funktioniert auch alles jedoch sind die Farben grün und lime nur schwer zu unterscheiden und nicht alle Farben sehen schön im GUI aus. Habe versucht die iconColor mit RGB Farben "#123456" oder '2355,255,255,1' einzufärben, allerdings bekomme ich es nicht hin.
Kann mir Bitte jemand Erklären, wie der Befehl dazu ist. Ich verstehe die Dokumentation über iconColor leider nicht ganz wie das Funktionieren soll.
Anstatt "green" versuchte ich rgb(#xyz) und rgba(255,255,255,1) was nicht geht. Weder beim F7 Icon noch bei den OH merterial Icons.

Vielen Dank

Antworten