Entwickler-Ecke

Sonstiges (Delphi) - RichEdit Größe automatisch an den Inhalt anpassen ?


dumpfbacke - Di 07.03.06 22:15
Titel: RichEdit Größe automatisch an den Inhalt anpassen ?
Ich habe folgendes Problem:

Ich würde gerne in einem RichEditfeld schön jegliche Zeile verändern lassen oder was auch immer der User möchte. Also Schriftgröße, -farbe, blabla ...
Das ist ja alles kein Problem, mein Problem ist dann aber das sich das RichEditfeld doch bitte den benötigten Platz nimmt. Ich möchte nicht scrollen, sondern das Fenster soll (soweit möglich) immer größer werden...

Also die Zeilen kann man ja auch schön herausbekommen, jedochc wie bekomme ich jetzt heraus wie hoch die einzelne Zeile ist oder wie gesagt was für eine Höhe der Text benötigt.

Ich danke für eure Bemühungen


GTA-Place - Di 07.03.06 22:27

Schau dir mal Suche in der Entwickler-Ecke CANVAS.FONT, Suche in der Entwickler-Ecke CANVAS.TEXTWIDTH(); und Suche in der Entwickler-Ecke CANVAS.TEXTHEIGHT();


dumpfbacke - Di 07.03.06 22:58

hm es tut mir leid, vielleicht stelle ich mich auch einfach nur zu dumm an, aber ich bekomme immer 13 als canvas.Textheight heraus...
//Edit
Denke das liegt daran das TRichEdit selber garkein Canvas besitzt ? Tut mir leid, aber ich bin nicht wirklich schlau in Sachen Delphi...

ich meine ich kann ja auch die Schriftgröße für jeder Zeile oder wegen mir auch jedes Wort (umständlich, aber sollte gehen) heraus bekommen, nur das bringt mich ja nicht weiter denn bei 72pt sind ja bei jeder Schriftart unterschiedlich hoch...

Danke für eure Anstrengungen


Coder - Di 07.03.06 23:34

Schau dir OnRequestRezise (oder so ähnlich) an dort bekommt du ein Rect geliefert welches genau die größe hat.


dumpfbacke - Mi 08.03.06 00:43

Na perfekt :) Herzlichen Dank für die schnelle Hilfe...

Man kann es sich auch schwer machen :) ... Aber das ist ja genau alles was man brauch in einer Funktion ...
SCHÖN

Danke sehr !


GTA-Place - Mi 08.03.06 20:25

user profile icondumpfbacke hat folgendes geschrieben:
Denke das liegt daran das TRichEdit selber garkein Canvas besitzt ? Tut mir leid, aber ich bin nicht wirklich schlau in Sachen Delphi...

Stimmt, aber du hättest das Canvas vom Form nehmen können. Aber die Methode von Coder ist nat. besser.


PS: Bitte markiere diesen Thread als beantwortet (siehe unter diesem Post). Danke.


dumpfbacke - Mi 08.03.06 21:18

hmm stimmt hast Recht :), danke sehr, aber das Andere ist wirklich praktischer ...

Sry, das ich das nicht als beantwortet markiert habe, kenne mich nicht so aus und wusste nicht das man hier sowas macht!
Ist sofort geschehen!