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/)
-   -   Unterschiedliche Font's in einem Textfeld (https://www.delphipraxis.net/127712-unterschiedliche-fonts-einem-textfeld.html)

ättbeere 17. Jan 2009 19:33


Unterschiedliche Font's in einem Textfeld
 
Hey Delphi-user,

Ich suche eine Delphikomponente, mit der ich unterschiedliche Schriftgrößen, Schriftfarben etc.
im selbem Textfeld haben kann.

Könnt ihr mir dann auch sagen wie ich die Font von einem Zeichen während der Laufzeit ändern kann
(z.B. soll das erste Zeichen die Schriftgröße 12 haben und das zweite 10 haben)?

Danke schon mal!!

Matze 17. Jan 2009 19:42

Re: Unterschiedliche Font's in einem Textfeld
 
Hallo, herzlich Willkommen!

Bei einem TRichEdit kannst du die Schrift nach belieben ändern. Siehe dir dazu die Eigenschaft "SelAttributes" an. Dazu findest du in der DP sicher auch einiges.

Grüße, Matze

DP-Maintenance 17. Jan 2009 19:42

DP-Maintenance
 
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "VCL / WinForms / Controls" verschoben.

ättbeere 17. Jan 2009 20:51

Re: Unterschiedliche Font's in einem Textfeld
 
Danke Matze!

Aber, soweit ich bei der Suche nach SelAttributes nicht etwas übersehen habe,
geht SelAttributes nur, wenn ich den Text, den ich verändern will, markiert habe.

Doch wie ändere ich die einzelnen Zeichen ohne ihn markieren zu müssen?
:gruebel:

Matze 17. Jan 2009 20:55

Re: Unterschiedliche Font's in einem Textfeld
 
Hallo,

entweder setzt du die Attribute vor dem Einfügen in das RichEdit:

Delphi-Quellcode:
RichEdit.Text := 'Hallo';

RichEdit.SelAttributes.Color := clRed;
RichEdit.Text := RichEdit.Text + 'Rot';

RichEdit.SelAttributes.Color := clBlue;
RichEdit.Text := RichEdit.Text + 'Blau';
oder du markierst ihn per Code vor dem Verändern:

Delphi-Quellcode:
RichEdit.Text := 'Hallo';
RichEdit.SelStart := 2;
RichEdit.SelLength := 1;
RichEdit1.SelAttributes.Color := clRed;
RichEdit.SelLength := 0;
Das sollte das "a" rot färben (evtl. ist es auch das "l", da bin ich mir nicht ganz sicher).

Grüße, Matze

ättbeere 17. Jan 2009 21:31

Re: Unterschiedliche Font's in einem Textfeld
 
Ah, Super!
Noch einmal vielen Dank! :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:14 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