Textlänge in einem Textfeld ermitteln (Widget)

  • Hallo ich würde gerne ermitteln wie viel Zeichen ein Text in meinem Widget hat.


    Quasi ein Zähler der jedes Zeichen zählt.


    Ich dachte ich könnte das vielleicht irgend wie mit Length abfragen aber irgend wie klappt das nicht.


    jemand ein Idee ?

    You may love to play games, but that doesn’t make you a developer.
    I love to eat dinner, but that doesn’t make me a chef.

    • Hilfreich

    Du könntest es in einem BP in einen String umwandeln, oder zwischenspeichern, und dann mit LEN abfragen.


    Das Beispiel ist jetzt natürlich etwas sehr konstruiert, um wenigstens ein Beispiel zu haben. Aber so funktioniert es zumindest.



    Ich glaube, das Zwischenspeichern kannst du dir auch sparen. Die Konvertierung in String könnte reichen.

  • Super so gehts :)


    Die ProgessBar zählt von 0 bis 1 wobei 1 der die volle Progress bar ist.


    Möchte ich zb das die Progressbar bei 100 voll ist, kann ich den Wert einfach um 100 teilen, dann wird der Wert auch korrekt angezeigt.


    Nun möchte ich aber das der volle Balken 256 ist.


    Kann man dem Progress Maximalwert irgend wie sagen, das dieser 256 und nicht 1 betragen soll ?


    So sieht das im Moment aus:


    Wobei die Konvertierung von Text auf String, von String auf Integer und von Integer auf String sicherlich auch nicht die beste Lösung ist :)

    You may love to play games, but that doesn’t make you a developer.
    I love to eat dinner, but that doesn’t make me a chef.

  • Ich versuche ja auch immer Konvertierungen so gut es geht zu vermeiden. Ich weiß ja auch nicht warum sie bei Text nicht ebenfalls eine Längenfunktion mit liefern. Aber das hatten wir ja schon einmal und ich bin noch immer davon überzeugt, das man alles, was Text kann, in der Engine auch mit Strings hätte umsetzen können. Die Trennung von beidem erschließt sich mir noch immer nicht so ganz.


    Mit Prgressbars habe ich in meinem Spiel nicht viel zu tun. Wohl das Einzige, was ich in der Unrealengine noch nie gebraucht habe. Aber wenn ich dich richtig verstanden habe ist es nicht wie bei .NET der Fall, dass die Progressbar eben halt auf die Größe die benötigt wird eingestellt wird, sondern das 1 immer 100 % sind?


    Wenn du schon durch 100 teilen kannst, wenn du nach % gehst, warum teilst du dann nicht durch die Maximallänge, die du benötigst? In deinem Fall durch 256?

  • Ich habe nun über Savegame erfolgreich größere Texte als Text gespeichert.

    Nun leider werden Texte offenbar immer ohne Absätze und Leerzeichen gespeichert, gibt es hier etwas besonderes zu beachten damit auch Leerzeichen und Absätze gespeichert werden können.

    You may love to play games, but that doesn’t make you a developer.
    I love to eat dinner, but that doesn’t make me a chef.

  • Das ist jetzt etwas schwierig. Weil ich weiß nicht wie Textdateien intern behandelt werden.


    Was du mal ausprobieren könntest, ist mit \n\r im Text vor dem Speichern zu arbeiten. Dann weißt du zumindest schonmal das Escapes funktionieren. Wenn dem so ist, müsstest du eventuell einen Algorithmus erstellen der automatisch die Escapes bei Absätzen, und überall wo es benötigt wird, einbaut.