Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Unterer Rand eines RichEdit Feldes (https://www.delphipraxis.net/4797-unterer-rand-eines-richedit-feldes.html)

Leo 12. Mai 2003 12:02


Unterer Rand eines RichEdit Feldes
 
Hi,

wie würdet ihr fetstellen, dass der Benutzer mit dem Cursor den unteren Rand eines RichEdit Feldes erreicht hat.

BEISPIEL:
Das RichEdit feld enthält genau eine Zeile, die aber aufgrund ihrer Länge im RichEdit in mehreren Zeilen angezeigt wird.

Zeile: 'Sie organisieren Streiks und Demonstrationen, diskutieren monatelang über Reformen ohne selbst welche entscheiden zu können.'

Anzeige:
Sie organisieren Streiks und
Demonstrationen, diskutieren
monatelang über Reformen ohne
selbst welche entscheiden zu
können.

Der Cursor befindet sich jetzt im Wort 'entscheiden' wie kann ich feststellen, ob unter diesem Wort noch ein Zeile Folgt (in diesem Fall 'könnten') oder nicht.

Anders gesagt, kann man irgendwie feststellen, in wieviele Zeilen der Satz Umgebrochen wurde.

Danke

flow 12. Mai 2003 12:25

Damit stellst du die Zeilenanzahl deiner RichEdit fest.
Delphi-Quellcode:
RichEdit1.Lines.Count;
Damit bekommst du die Zeile in der sich der Cursor gerade befindet!
Delphi-Quellcode:
function GetRichEditRow(R : TRichEdit) : Integer;
begin
  Result := SendMessage(R.Handle, EM_LINEFROMCHAR, R.SelStart, 0);
end;
Wenn jetzt GetRichEditRow kleiner als Count ist dann ist der Cursor noch nicht am Ende der RichEdit.

FLOW

Leo 12. Mai 2003 12:38

Wahnsinn
 
Cool,

das mit dem 'RichEdit1.Lines.Count' war mir schon klar, aber woher weis man das andre.

Respekt.

Danke das war genau das was ich gesucht habe. :spin:

Leo 14. Mai 2003 02:20

Höhe des RichEdit Inhaltes
 
Hallo,

kann man kurz nachdem man dem RichEdit einen Text zugeweisen hat die Höhe des Textes herausfinden, um die Größe des RichEditFeldes noch vor seiner ersten Anzeige so zu verändern, dass der gesammte Text zu sehen ist?

Ich nehme an, es geht so ähnlich wie das Beispiel oben aber ich habe keine Passende Message gefunden.

flow 14. Mai 2003 06:54

Naja,

du kannst Count mit der Texthöhe multiplizieren pluseinem Texthöhenabstand.

FLOW


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz