Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi verschiedene schriften im selben control (https://www.delphipraxis.net/74409-verschiedene-schriften-im-selben-control.html)

sancho1980 2. Aug 2006 21:42


verschiedene schriften im selben control
 
gibt es irgendein control, in dem ich text wie in ein memo schreiben kann, aber das gleichzeitig verschiedene fonts (farben, style) verwendet?

danke,

martin

EDatabaseError 2. Aug 2006 21:45

Re: verschiedene schriften im selben control
 
TRichEdit

xaromz 2. Aug 2006 21:46

Re: verschiedene schriften im selben control
 
Hallo,
Zitat:

Zitat von sancho1980
gibt es irgendein control, in dem ich text wie in ein memo schreiben kann, aber das gleichzeitig verschiedene fonts (farben, style) verwendet?

Ja, gibt es: Das Delphi-Referenz durchsuchenTRichEdit.

Gruß
xaromz

sancho1980 2. Aug 2006 22:19

Re: verschiedene schriften im selben control
 
cool
aber irgendwie läuft das net so wie ich mir das vorstelle:

Delphi-Quellcode:
self.TntRichEdit1.DefAttributes.Color := clRed;
self.TntRichEdit1.Lines.Add('rot');
self.TntRichEdit1.SelAttributes.Color := clGreen;
self.TntRichEdit1.Lines.Add('grün');
Soweit so gut, aber ich will beispielsweise zwei verschiedene Fonts auch mal in der gleichen Zeile haben, also versuchte ich:


Delphi-Quellcode:
self.TntRichEdit1.DefAttributes.Color := clRed;
self.TntRichEdit1.Text := 'rot';
self.TntRichEdit1.SelAttributes.Color := clGreen;
self.TntRichEdit1.Text := self.TntRichEdit1.Text + ' grün';
Jetz is aber alles grün :-(

Flocke 2. Aug 2006 22:58

Re: verschiedene schriften im selben control
 
Arbeite nicht mit .Lines[] oder .Text, denn damit verarbeitest du immer nur reinen Text. Suche im Forum nach Beispielen zu SelStart, SelLength, SelText und SelAttributes - damit manipulierst du den jeweils ausgewählten Text. Mit
Delphi-Quellcode:
RichEdit1.SelStart := SendMessage(RichEdit1.Handle, EM_LINEINDEX, LineNo, 0);
RichEdit1.SelLength := SendMessage(RichEdit1.Handle, EM_LINELENGTH, RichEdit1.SelStart, 0);
kannst du jeweils eine ganze Zeile markieren und danach mit SelAttributes für diese Auswahl die Attribute ändern.

sancho1980 3. Aug 2006 11:37

Re: verschiedene schriften im selben control
 
Ok, wenn ich den text über die Eigenschaft 'Text' anspreche, wie ist dann das Steuerzeichen, um eine neue Zeile anzufangen?

fwsp 3. Aug 2006 11:37

Re: verschiedene schriften im selben control
 
Delphi-Quellcode:
#13#10
CRLF

stz 3. Aug 2006 13:31

Re: verschiedene schriften im selben control
 
Zitat:

Zitat von fwsp
Delphi-Quellcode:
#13#10
CRLF

Oder
Delphi-Quellcode:
sLineBreak
geht glaub ich erst ab Delphi6

Gruß
Malte


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