Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Material Design Widget: Farbe ändern eines Icons durch Wert

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    11
    1
    88

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    556

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

Material Design Widget: Farbe ändern eines Icons durch Wert

Geplant Angeheftet Gesperrt Verschoben Visualisierung
7 Beiträge 3 Kommentatoren 537 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    Momo1982
    schrieb am zuletzt editiert von
    #1

    Servus zam,
    da die SuFu leider nicht zum entsprechenden Ergebnis geführt hat, möchte ich um euer Fachwissen bitten.

    Ich habe aktuell die Herausforderung, dass ich die Farbe eines Icon anhand eines Wertes ändern möchte. Dieser Bereich soll in 3 Teile eingeteilt werden: Wert <= 5 = Farbe 1, Wert >= 25 = Farbe3, alles dazwischen Farbe2.
    Für 2 Optionen ist es ja nicht weiter dramatisch, anbei der Code dafür: {b:Datenpunkt:MaxTemp;b>="25" ? "Farbe3" : "Farbe2"}
    Meine Gedanke hier ist der folgende: {b:Datenpunkt:MaxTemp;b>="25" ? "#ffe312" : b<="5" ? "#39d6db" : "#a00d0d"} - funktioniert allerdings nicht. Kann hier jemand weiterhelfen?
    Als Button wird hier der Typ "Button State" genutzt.

    Danke schon mal im Voraus!

    Pfiats eich

    CodierknechtC 1 Antwort Letzte Antwort
    0
    • M Momo1982

      Servus zam,
      da die SuFu leider nicht zum entsprechenden Ergebnis geführt hat, möchte ich um euer Fachwissen bitten.

      Ich habe aktuell die Herausforderung, dass ich die Farbe eines Icon anhand eines Wertes ändern möchte. Dieser Bereich soll in 3 Teile eingeteilt werden: Wert <= 5 = Farbe 1, Wert >= 25 = Farbe3, alles dazwischen Farbe2.
      Für 2 Optionen ist es ja nicht weiter dramatisch, anbei der Code dafür: {b:Datenpunkt:MaxTemp;b>="25" ? "Farbe3" : "Farbe2"}
      Meine Gedanke hier ist der folgende: {b:Datenpunkt:MaxTemp;b>="25" ? "#ffe312" : b<="5" ? "#39d6db" : "#a00d0d"} - funktioniert allerdings nicht. Kann hier jemand weiterhelfen?
      Als Button wird hier der Typ "Button State" genutzt.

      Danke schon mal im Voraus!

      Pfiats eich

      CodierknechtC Offline
      CodierknechtC Offline
      Codierknecht
      Developer Most Active
      schrieb am zuletzt editiert von Codierknecht
      #2

      @momo1982
      Ich mache etwas ähnliches mit einem HTML-Widget und löse das mit CSS-Klassen.

      <div class="machineIndicator">
        <div title="Geschirrspüler" class='{onOff:sonoff.0.NOUS_18281F.POWER;onOff=="true"?"machineOn":"machineOff"} {power:sonoff.0.NOUS_18281F.ENERGY_Power;(parseFloat(power) > 2)?"machineRed":"machineGreen"}' />
        <div title="Waschmaschine" class='{onOff:sonoff.0.NOUS_1821B4.POWER;onOff=="true"?"machineOn":"machineOff"} {power:sonoff.0.NOUS_1821B4.ENERGY_Power;(parseFloat(power) > 2)?"machineRed":"machineGreen"}' />
        <div title="Trockner" class='{onOff:sonoff.0.NOUS_C2FB6D.POWER;onOff=="true"?"machineOn":"machineOff"} {power:sonoff.0.NOUS_C2FB6D.ENERGY_Power;(parseFloat(power) > 2)?"machineRed":"machineGreen"}' />
      </div>
      
      .machineIndicator div {
          height: 10px;
          width: 10px;
          float: left;
          margin-right: 2px;
          border-radius: 5px;
          display: block;
      }
      .machineOff {
          background-color: gray;    
      }
      .machineOn.machineRed {
          background-color: orange;
      }
      .machineOn.machineGreen {
          background-color: forestgreen;    
      }
      

      Das Ganze dient als Indikator für online/offline/Betrieb einiger Geräte.
      8528611d-bcce-4926-ac29-ec60b6b2f73d-image.png

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      M 1 Antwort Letzte Antwort
      0
      • CodierknechtC Codierknecht

        @momo1982
        Ich mache etwas ähnliches mit einem HTML-Widget und löse das mit CSS-Klassen.

        <div class="machineIndicator">
          <div title="Geschirrspüler" class='{onOff:sonoff.0.NOUS_18281F.POWER;onOff=="true"?"machineOn":"machineOff"} {power:sonoff.0.NOUS_18281F.ENERGY_Power;(parseFloat(power) > 2)?"machineRed":"machineGreen"}' />
          <div title="Waschmaschine" class='{onOff:sonoff.0.NOUS_1821B4.POWER;onOff=="true"?"machineOn":"machineOff"} {power:sonoff.0.NOUS_1821B4.ENERGY_Power;(parseFloat(power) > 2)?"machineRed":"machineGreen"}' />
          <div title="Trockner" class='{onOff:sonoff.0.NOUS_C2FB6D.POWER;onOff=="true"?"machineOn":"machineOff"} {power:sonoff.0.NOUS_C2FB6D.ENERGY_Power;(parseFloat(power) > 2)?"machineRed":"machineGreen"}' />
        </div>
        
        .machineIndicator div {
            height: 10px;
            width: 10px;
            float: left;
            margin-right: 2px;
            border-radius: 5px;
            display: block;
        }
        .machineOff {
            background-color: gray;    
        }
        .machineOn.machineRed {
            background-color: orange;
        }
        .machineOn.machineGreen {
            background-color: forestgreen;    
        }
        

        Das Ganze dient als Indikator für online/offline/Betrieb einiger Geräte.
        8528611d-bcce-4926-ac29-ec60b6b2f73d-image.png

        M Offline
        M Offline
        Momo1982
        schrieb am zuletzt editiert von
        #3

        @codierknecht Das schaut erstmal ganz gut aus. Leider sind meine Kenntnisse in Sachen Programmierung eher rudimentär. Ich wäre daher sehr froh, wenn man dies über meinen o.g. Ansatz lösen könnte. :man-shrugging:

        CodierknechtC 1 Antwort Letzte Antwort
        0
        • M Momo1982

          @codierknecht Das schaut erstmal ganz gut aus. Leider sind meine Kenntnisse in Sachen Programmierung eher rudimentär. Ich wäre daher sehr froh, wenn man dies über meinen o.g. Ansatz lösen könnte. :man-shrugging:

          CodierknechtC Offline
          CodierknechtC Offline
          Codierknecht
          Developer Most Active
          schrieb am zuletzt editiert von
          #4

          @momo1982
          Das hat mit "Programmierung" nicht wirklich zu tun.
          Ist lediglich ein Stück HTML und etwas CSS.

          Wozu ein Button?
          Kann man den anklicken? Macht der dann was?
          Wenn es nur um "Anzeigen" geht, ist ein Button an der Ecke das falsche Steuerelement.

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          HomoranH M 2 Antworten Letzte Antwort
          0
          • CodierknechtC Codierknecht

            @momo1982
            Das hat mit "Programmierung" nicht wirklich zu tun.
            Ist lediglich ein Stück HTML und etwas CSS.

            Wozu ein Button?
            Kann man den anklicken? Macht der dann was?
            Wenn es nur um "Anzeigen" geht, ist ein Button an der Ecke das falsche Steuerelement.

            HomoranH Offline
            HomoranH Offline
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #5

            @codierknecht sagte in Material Design Widget: Farbe ändern eines Icons durch Wert:

            Wenn es nur um "Anzeigen" geht, ist ein Button an der Ecke das falsche Steuerelement.

            dafür gibt es bei Buttons aber oft die Option "nur lesen" damit sie als Anzeige nutzbar sind.

            Regen anschalten kann ich damit auch nicht

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            CodierknechtC 1 Antwort Letzte Antwort
            0
            • HomoranH Homoran

              @codierknecht sagte in Material Design Widget: Farbe ändern eines Icons durch Wert:

              Wenn es nur um "Anzeigen" geht, ist ein Button an der Ecke das falsche Steuerelement.

              dafür gibt es bei Buttons aber oft die Option "nur lesen" damit sie als Anzeige nutzbar sind.

              Regen anschalten kann ich damit auch nicht

              CodierknechtC Offline
              CodierknechtC Offline
              Codierknecht
              Developer Most Active
              schrieb am zuletzt editiert von
              #6

              @homoran sagte in Material Design Widget: Farbe ändern eines Icons durch Wert:

              dafür gibt es bei Buttons aber oft die Option "nur lesen" damit sie als Anzeige nutzbar sind.

              Das widerspricht aber dann allen mir bekannten Regeln zum Thema UI/UX.
              Ein Benutzer der einen Button sieht sollte davon ausgehen können, dass der auch klickbar ist und eine Aktion ausführt. Das ist ja Sinn und Zweck eines Button.
              Ich jedenfalls würde für eine reine Anzeigefunktion ein anderes Design wählen.
              Aber wer bin schon ich? ... :innocent: :joy:

              Regen anschalten kann ich damit auch nicht

              Du nimmst mir jede Illusion :anguished:

              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
              HmIP|ZigBee|Tasmota|Unifi
              Zabbix Certified Specialist
              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

              1 Antwort Letzte Antwort
              0
              • CodierknechtC Codierknecht

                @momo1982
                Das hat mit "Programmierung" nicht wirklich zu tun.
                Ist lediglich ein Stück HTML und etwas CSS.

                Wozu ein Button?
                Kann man den anklicken? Macht der dann was?
                Wenn es nur um "Anzeigen" geht, ist ein Button an der Ecke das falsche Steuerelement.

                M Offline
                M Offline
                Momo1982
                schrieb am zuletzt editiert von Momo1982
                #7

                @codierknecht said in Material Design Widget: Farbe ändern eines Icons durch Wert:

                Wozu ein Button?

                Der Button ist als "Text" formatiert und kann nicht angeklickt werden und ist auch ned als ein solcher zu erkennen. Ist einfach nur ein Anzeigeobjekt.

                Es gibt also aktuell keine Möglichkeit, mein Vorhaben wie o.g. umzusetzen? Das wäre natürlich schade. Dann müsste ich es doch mit CSS versuchen. Was auch nicht zu meinem daily business gehört. :joy:

                1 Antwort Letzte Antwort
                0
                Antworten
                • In einem neuen Thema antworten
                Anmelden zum Antworten
                • Älteste zuerst
                • Neuste zuerst
                • Meiste Stimmen


                Support us

                ioBroker
                Community Adapters
                Donate

                368

                Online

                32.5k

                Benutzer

                81.8k

                Themen

                1.3m

                Beiträge
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2025
                logo
                • Anmelden

                • Du hast noch kein Konto? Registrieren

                • Anmelden oder registrieren, um zu suchen
                • Erster Beitrag
                  Letzter Beitrag
                0
                • Home
                • Aktuell
                • Tags
                • Ungelesen 0
                • Kategorien
                • Unreplied
                • Beliebt
                • GitHub
                • Docu
                • Hilfe