![]() |
Scrollender Text
Manchmal sind die einfachen Dinge kompliziert. Bitte um einen Tipp!
Ich möchte beim Programmstart in einem Memo oder ähnlichem Statusinfos mitlaufen lassen. Aber: - FMX (also kein Sendmessage) - die Höhe des Memos (oder was auch immer) kann sich je nach Größe des übergeordneten Fensters ändern. Ich kann aus der Höhe des Memos + der Texthöhe die sichtbare Zeilenzahl errechnen + dann die jeweils erste Zeile löschen - aber wenn es einfacher geht oder anders einfacher - gerne. |
AW: Scrollender Text
Meinst du zufällig so etwas wie das Ladefenster von Delphi selber? Wenn man einige größere Komponentensammlungen etc installiert hat verändert sich die Größe da ja auch.
|
AW: Scrollender Text
Zitat:
|
AW: Scrollender Text
Nicht ganz - die Größe ändert sich nicht, weil zusätzlicher Text angezeigt wird (wie bei Delphi) sondern weil es nicht bekannt ist, wie hoch das Fenster ist, sobald begonnen wird, Text reinzuschreiben.
|
AW: Scrollender Text
Zitat:
|
AW: Scrollender Text
Zitat:
|
AW: Scrollender Text
Ich verstehe das konkrete Problem jetzt ehrlich gesagt auch nicht.
|
AW: Scrollender Text
Reicht dir vielleicht Memo1.Lines.Insert(0, NeuerText); ?
Ich scrolle am liebsten von oben rein, dann steht da die aktuellste Info ... Rollo |
AW: Scrollender Text
wenn Du ganz "normal"
Delphi-Quellcode:
ausführst, sollte der Text auch scrollen.
memo1.Lines.add('blablablah');
(Ist bei mir grundsätzlich ausgeschaltet, weil das so bremst) Gruß K-H |
AW: Scrollender Text
Sollte. Aber bei fmx hängt bei mir oft die letzte zeile, falls Tigerlilly das meint.
Durch das vorne Einfügen stört mich die letzte Zeile nicht mehr. |
AW: Scrollender Text
|
AW: Scrollender Text
@mkinzler: Ah, ja, so was hab ich gesucht. Danke! Sehr super. :thumb:
|
AW: Scrollender Text
Ich hab mir das TMemo-verhalten nochmal angesehen, weil ich ob der "Was ist denn eigentlich dein Problem" unsicher wurde. Also nochmal:
Ich habe ein TMemo + füge mit TMemo.Lines.Add(Info) Zeilen dazu. Die werden unten im Memo angefügt + sobald der Platz für die Darstellung aus ist, sieht man die neu angefügten nicht. Der Inhalt scrollt also nicht automatisch nach oben. Das ist aber das, was ich gerne hätte: die jeweils letzte zugefügte Info soll sichtbar sein. Unter Windows kann ich eine Message senden, die das tut, aber nicht unter FMX. Ich kann - sobald das Memo voll ist - die erste Zeile löschen, aber wann weiß ich, dass das Memo voll ist? Also immer noch danke für jeden Tipp! |
AW: Scrollender Text
Ganz pragmatisch hätte ich jetzt gesagt:
Delphi-Quellcode:
Memo.Lines.Add(Text);
Memo.ScrollTo(0, MAXINT); |
AW: Scrollender Text
Warum dann nicht direkt:
Delphi-Quellcode:
?
Memo.GoToTextEnd
|
AW: Scrollender Text
Yep, das ist es. Dankeschön! :thumb:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz