Ankündigung

Einklappen
Keine Ankündigung bisher.

Wie Textfarbe wertabhängig machen?

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    [Visualisierung] Wie Textfarbe wertabhängig machen?

    Hallo miteinander,

    via Mappings kann man ja die Farbe von Icons ändern. Dazu hat es hier das Beispiel mit dem Zustand der Fenster. Wie kann man das für den Text in Info-Felder machen? Also bspw. möchte ich negative Werte rot, positive Werte grün und die 0 weiss haben. Ideen dazu, wie sich das umsetzen lassen würde?
    Kind regards,
    Yves

    #2
    Schau dir doch mal im Metall design das Beispiel für die Sollwert Veränderung der Heizung an. Das funktioniert mit einem Infotrigger. Das sollte sich eigentlich auf ein Info Objekt auch anwenden lassen. Sonst lässt du zur Not up und down im Infotrigger weg.

    Kommentar


      #3
      Das ist Standard-Funktionalität. Schau mal in die Demo-Config auf den Slider und v.a. auf den "Info: Slider" direkt daneben.
      TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

      Kommentar


        #4
        Nein, das funktioniert nicht. Eine ähnliche Variante habe ich schon versucht, da meckert schon die XML-Validierung. Habe jetzt die folgende Variante via Stylings laufen:

        Code:
        <styling name="White_Red">
            <entry value="0">white</entry>
            <entry range_min="0" range_max="1000">red</entry>
        </styling>
        Eingebunden dann wie folgt:

        Code:
        <info format="%.1f W" class="value_right" styling="White_Red">
            <layout colspan="1"/>
            <address transform="OH:Number">Last_Steamer</address>
        </info>
        Der Wert aus dem OpenHAB-Item Last_Steamer wird zwar korrekt dargestellt, aber alle Werte sind nun immer rot, also auch wenn dort 0.0 steht. Eigentlich habe ich erwartet, dass der Null-Wert weiss ist und sobald dort eine andere Zahl kommt, diese rot in Erscheinung tritt. Muss mal checken, ob der Wert wirklich 0 ist...
        Kind regards,
        Yves

        Kommentar


          #5
          Setze doch mal die Range von 1 bis 1000.

          Kommentar


            #6
            OK, Problem gelöst. Der Wert wird in der Tat weiss dargestellt, wenn ich fix 0 eintrage. Von daher liegt es wohl an der Rundung des Float-Wertes, dass dort zwar 0,0 in der CV dargestellt wird, intern aber ein Wert != 0 vorliegt.
            Kind regards,
            Yves

            Kommentar


              #7
              Yup, die Ranges überlappen sich. D.h. das Verhalten dieser konkreten Config ist undefiniert.
              TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

              Kommentar


                #8
                Ist das so? Ich dachte konkrete Werte gewinnen immer gegenüber Ranges? Meine das irgendwo gelesen zu haben...

                Kommentar


                  #9
                  Hallo Chris

                  Zitat von Chris M. Beitrag anzeigen
                  Yup, die Ranges überlappen sich. D.h. das Verhalten dieser konkreten Config ist undefiniert.
                  Undefiniert? Wieso das? Auf der Wiki-Page steht das aber explizit so beschrieben, wie von jolt bereits angemerkt:

                  Zitat von http://cometvisu.org/wiki/CometVisu/0.8.x/mapping/de#Wertebereiche
                  Hier gilt die Regel, dass alle Werte, die Einzeldefinitionen haben, höher priorisiert werden, als die Werte innerhalb eines Wertebereichs.
                  Kind regards,
                  Yves

                  Kommentar


                    #10
                    Na dann muss man mal in den Code sehen wie das umgesetzt ist.

                    Wie ich das damals programmiert hatte, hatte ich mir sicher etwas gedacht. Ob ich da eine gewisse Priorität haben wollte oder ob es geworden ist wie implementiert weiß ich nicht mehr.
                    Die Doku stammt nicht von mir - ob die auf interpretierten oder real im Code nachgeschlagenem Verhalten basiert kann ich nicht sagen.
                    TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

                    Kommentar


                      #11
                      Wenn ich den Code richtig verstehe, dann sollte alles passen

                      Kommentar


                        #12
                        Hallo

                        ich möchte da was ähnliche umsetzten. Leider funktioniet es nicht wie erwartet.

                        Code:
                        <mapping name="Status">
                        <entry value="0">Abwesend</entry>
                        <entry value="1">Anwesend</entry>
                        </mapping>
                        
                        <styling name="GreenRed">
                        <entry value="0">green</entry>
                        <entry value="1">red</entry>
                        </styling>
                        
                        <info mapping="Status"styling="GreenRed">  <layoutcolspan="2"align ="center"/>
                        <address transform="OH:switch"mode="readwrite">Presence</address>
                        </info>
                        Das Styling wird dabei völlig ignoriert und die Farbe fehlt. Was mach ich da Falsch ?
                        Gruß

                        Guido

                        Kommentar


                          #13
                          Hast Du auch ein Leerzeichen im Info drinnen?
                          Code:
                          <info mapping="Status" styling="GreenRed">
                                                ^
                          Im Code im Posting #12 fehlt das nämlich...
                          TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

                          Kommentar

                          Lädt...
                          X