Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Text in Farbe ausgeben - Blockly

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Text in Farbe ausgeben - Blockly

    This topic has been deleted. Only users with topic management privileges can see it.
    • BananaJoe
      BananaJoe Most Active last edited by

      @crunchip sagte in Text in Farbe ausgeben - Blockly:

      {v:tankerkoenig.0.stations.cheapest.e5.name;v == "Shell Höchstadt" ? "#00cc00" : "#ffffff"}

      endlich verstehe ich Bindings ...

      Bei einem True/False Datenpunkt funktionierte diese Variante:

      {wert:zigbee.0.00158d000451d716.opened;wert == "true" ? "#FF0000" : "#00FF00"}
      

      den du in das Feld TextColor des ListDoor einträgst - natürlich mit deinem Datenpunkt

      1 Reply Last reply Reply Quote 0
      • JB_Sullivan
        JB_Sullivan @crunchip last edited by JB_Sullivan

        @crunchip

        Hmmm - ich glaube, es ist nicht ganz das was ich gesucht habe. Ich schreibe mir ja über ein Blockly Script in einen Datenpunkt einen individuellen Texte rein.

        16d9123c-2fc5-4f7b-907c-7ef726ec05e9-image.png

        Diese Datenpunkte visualisiere ich dann in meiner VIS, was zum Ergebnis hat, das der Text aus dem Datenpunkt dort angezeigt wird. Nun ist es aber so, das aus diesem DP Text nur ein Wort (AUS /EIN) eine andere Farbe bekommen soll, um dieses besser hervorzuheben.

        Ich glaube nicht das dass mit einem Binding geht, wobei ich zugeben muss, das ich das mit den Bindings noch nicht so richtig verstanden habe.

        9d8c0a71-63d7-4c7f-bda6-78dbbd892a85-image.png

        802c296d-01a4-4480-8872-ce88d7f2053a-image.png

        crunchip 1 Reply Last reply Reply Quote 0
        • crunchip
          crunchip Forum Testing Most Active @JB_Sullivan last edited by crunchip

          @jb_sullivan das geht schon mit binding, hier mal ein anderes Beispiel
          bzw, wenn wird dadurch die ganze Textzeile eingefärbt und nicht nur das eine Wort.
          @SBorg ist der Binding Guru😊 vllt weiss er, ob und wie das machbar ist

          JB_Sullivan 1 Reply Last reply Reply Quote 0
          • JB_Sullivan
            JB_Sullivan @crunchip last edited by

            @crunchip

            und wo kommt so eine Binding Programmzeile in das Widget rein? Bei HTML?

            crunchip SBorg 2 Replies Last reply Reply Quote 0
            • crunchip
              crunchip Forum Testing Most Active @JB_Sullivan last edited by

              @jb_sullivan hab ich oben geschrieben, bei css Font & Text
              1bc65c67-72e2-473b-a44c-1bcf91911cbc-grafik.png

              1 Reply Last reply Reply Quote 0
              • SBorg
                SBorg Forum Testing Most Active @JB_Sullivan last edited by

                @jb_sullivan Viele Wege führen nach Rom 🙂
                Da Bindings auch Ressourcen benötigen und du den String eh schon "selbst baust", würde ich es einfach dort ansiedeln und dann in der VIS per HTML-Widget ausgeben. Per Binding müsste man den String nach "AN / AUS" erst durchsuchen und dann selektiv färben (aber ebenfalls machbar).

                Im Blockly:

                Ladestation An: Text "e-Bike Ladestation ist<div style='color:green'>AN</div>"
                Ladestation Aus: Text "e-Bike Ladestation ist<div style='color:red'>AUS</div>"

                Für die Farbwerte gehen natürlich per # auch HEX-Werte...
                Benötigt so keinerlei zusätzliche Ressourcen 😉

                JB_Sullivan 1 Reply Last reply Reply Quote 0
                • JB_Sullivan
                  JB_Sullivan @SBorg last edited by JB_Sullivan

                  @sborg

                  Da haben wir es wieder, ich bin einfach zu Alt und noch in der HTML Welt verankert. Genau den Ansatz hatte ich schon probiert aber halt als HTML <font color=red>AN</font>

                  Hat natürlich nicht funktioniert und darum habe ich nach einem anderen Ansatz gesucht.

                  Interessant ist, das der Blockly Weg über eine Variable (ColorEIN-Rot) auch nicht funktioniert hat. Aber auch mit deinen <div style> Ansatz funktioniert es leider nicht 😞

                  ab03471f-f774-44a2-b3ec-86277d0970b6-image.png

                  4a293b7e-40e6-4705-b9a4-f22b15b3adcd-image.png

                  So schaut es dann im VIS aus - er interpretiert den Code als Text (basic-string)

                  b3998e3b-46b9-4311-b2a6-735ff64d7561-image.png

                  SBorg 1 Reply Last reply Reply Quote 0
                  • SBorg
                    SBorg Forum Testing Most Active @JB_Sullivan last edited by

                    @jb_sullivan Du hast ein "erstelle Text aus" bei den Prüfungen zu viel 😉
                    Bild 1.png


                    <xml xmlns="https://developers.google.com/blockly/xml">
                    <block type="on" id=":PD,NTEl^9T/6i@Jb/]f" x="63" y="38">
                    <field name="OID">0_userdata.0.Dummy</field>
                    <field name="CONDITION">ne</field>
                    <field name="ACK_CONDITION"></field>
                    <statement name="STATEMENT">
                    <block type="update" id="{Bs2O!|X}z@tL6%OkM=2">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">0_userdata.0.Output</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                    <block type="text_join" id="XA$^1CH$rQioQQ-ul=|">
                    <mutation items="2"></mutation>
                    <value name="ADD0">
                    <block type="text" id="jXg0YY6rYlBeop*r5gXm">
                    <field name="TEXT">blabla ist </field>
                    </block>
                    </value>
                    <value name="ADD1">
                    <block type="logic_ternary" id=".GtO.w^~G9V1MGJS^:VL">
                    <value name="IF">
                    <block type="on_source" id=")r3:dbhi02J=q(1d|IP)">
                    <field name="ATTR">state.val</field>
                    </block>
                    </value>
                    <value name="THEN">
                    <block type="text" id="xJ0z,}R34glB79WK$`">
                    <field name="TEXT"><div style='color:green'>AN</div></field>
                    </block>
                    </value>
                    <value name="ELSE">
                    <block type="text" id="?UMdV=Qoq-wjjvgV
                    ;F8">
                    <field name="TEXT"><div style='color:red'>AUS</div></field>
                    </block>
                    </value>
                    </block>
                    </value>
                    </block>
                    </value>
                    </block>
                    </statement>
                    </block>
                    </xml>

                    Anzeige dann per HTML-Widget und Binding auf den erzeugten DP.
                    Dummy = true/false
                    Output = Zeichenkette

                    Funzt: 😀
                    VIS.mp4

                    JB_Sullivan 1 Reply Last reply Reply Quote 0
                    • JB_Sullivan
                      JB_Sullivan @SBorg last edited by

                      @sborg

                      Ja, manchmal sieht man vor lauter klicken den Wald (Code) vor Bäumen nicht. Danke für den Hinweis bzgl. des doppelten "erstelle Text"

                      Trotzdem geht es mit einem Basic String im VIS nicht. Man muss einen Basic String unescaped nehmen.

                      Jetzt habe ich aber das Problem, das er mir für das zweite Wort einen Zeilenumbruch rein bastelt. Hat auch nichts mit der Widget Größe zu tun. Kann ich groß machen wie ich will, er bricht mir das farbige Wort immer in darunter liegende Zeile um.

                      f545c60a-e724-40db-b9ad-290154f7e52f-image.png

                      SBorg 1 Reply Last reply Reply Quote 0
                      • SBorg
                        SBorg Forum Testing Most Active @JB_Sullivan last edited by

                        @jb_sullivan 😁
                        Ersetze einfach "div" durch "span" --> dann bleibt es in einer Zeile 😉

                        JB_Sullivan 1 Reply Last reply Reply Quote 0
                        • JB_Sullivan
                          JB_Sullivan @SBorg last edited by JB_Sullivan

                          @sborg

                          Verdammte Hacke - habe ich mich schon wieder irgend wo vertippt und sehe es nicht?

                          2ae3df87-15a5-4176-9fde-989aff3b2e93-image.png

                          Bei zwei Einträgen ist der Zeilenumbruch weg, bei zweien ist er geblieben (Cache gelöscht und F5 gedrückt habe ich schon) 😣 Aber interessanter Weise bei nur einem der beiden Eintrage (AN)

                          eb47b09f-f442-4b63-a839-9ac5c760ac90-image.png

                          290418df-daf6-4c56-a903-27995decce7c-image.png

                          EDIT: Hmmm - ist wohl doch ein Chrome Cache Problem. Mit anderen Browsern und Endgeräten ist alles OK

                          SBorg 1 Reply Last reply Reply Quote 0
                          • SBorg
                            SBorg Forum Testing Most Active @JB_Sullivan last edited by

                            @jb_sullivan Noch Vierbesserungspotential: schau dir mal mein "prüfe" an.
                            Du moppelst doppelt 😉
                            wenn Licht an, dann prüfe Licht an = wahr dann..., sonst prüfe _Licht an = falsch dann...
                            Du hast aber doch schon Eingangs geprüft "wenn Licht an...", dann brauchst du wenn es "an" ist nicht nochmal prüfen ob es "an" ist.

                            Wenn bspw. dein "Verbraucher_x" true ist, ist er schon "wahr". Da braucht es nicht nochmals eine Prüfung ob er "wahr" ist. Du prüfst hier quasi sind Äpfel Äpfel? Das Ergebnis wird immer "wahr" sein. Mit deinem Term hast du eine Abfrage ist 1=1? Das Ergebnis der Abfrage dürfte ziemlich eindeutig sein 😁

                            JB_Sullivan 1 Reply Last reply Reply Quote 0
                            • JB_Sullivan
                              JB_Sullivan @SBorg last edited by

                              @sborg

                              Gefahr erkannt - Gefahr gebannt 😉

                              Ich sagte ja, man probiert soviel hin und her, klickt hier und da, verwirft es wieder und macht was neues, geht zwischendurch was essen usw. dann bleiben da solche "Versuchsleichen" einfach mal unbeabsichtigt drin.

                              So, Prüfung, ob ein Apfel auch ein Apfel ist, ist raus 😉

                              7a99eed7-6ec6-4365-b957-0eebd8eef9bb-image.png

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate
                              FAQ Cloud / IOT
                              HowTo: Node.js-Update
                              HowTo: Backup/Restore
                              Downloads
                              BLOG

                              614
                              Online

                              31.9k
                              Users

                              80.2k
                              Topics

                              1.3m
                              Posts

                              blockly farbe text
                              6
                              20
                              1290
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo