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/)
-   -   Einem Richedittext einen Font zuweisen (https://www.delphipraxis.net/115622-einem-richedittext-einen-font-zuweisen.html)

Larsi 14. Jun 2008 21:37


Einem Richedittext einen Font zuweisen
 
Darf ich nochmal was ganz kurzes hinterherschieben? Wie kann man denn nur den makierten Text eines Richedits mit der Font ändern?

[edit=Sharky]Dieser Thread ist ab diesem Posting aus diesem hier hervorgegangen. Mfg, Sharky[/edit]

mkinzler 14. Jun 2008 21:38

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Schau dir mal RichEdit.SelAttributes an

Die Muhkuh 14. Jun 2008 21:38

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
RichEdit.SelAttributes.Font

Larsi 14. Jun 2008 21:41

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
da gibt es aber die .Font gar nicht. Also RichEdit.SelAttributes.Font geht nicht da kommt ein Fehler: [DCC Fehler] Unit1.pas(79): E2003 Undefinierter Bezeichner: 'font'

mkinzler 14. Jun 2008 21:43

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Der Font ist auch in seine Teilwerte zerlegt

Sharky 14. Jun 2008 21:46

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Zitat:

Zitat von Larsi
Darf ich nochmal was ganz kurzes hinterherschieben? ...

:gruebel: Da gab es doch mal etwas mit: "Nur eine Frage pro Thread" :?:

Larsi 14. Jun 2008 21:48

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Delphi-Quellcode:
if RichEdit1.SelAttributes = '' then
RichEdit1.Font.name := Combobox1.Items.Strings[Combobox1.ItemIndex]
else
RichEdit1.SelAttributes.name := Combobox1.Items.Strings[Combobox1.ItemIndex];
Wenn ich das jetut so mache kommen immernoch Fehler:
[DCC Fehler] Unit1.pas(79): E2010 Inkompatible Typen: 'string' und 'TTextAttributes'

Wie kann ich es denn machen, dass wenn nichts makiert ist, dann alles im Richedit durch die Font verändert wird?



Edit: Oh, oh, jetzt werde ich wohl getötet :oops: :-D

mkinzler 14. Jun 2008 21:50

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Versuch mal
Delphi-Quellcode:
RichEdit1.SelAttributes.Name := ComboBox1.Text;

Neutral General 14. Jun 2008 21:51

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Hi,

SelAttributes ist ein Set. Ein leeres Set ist [].

Gruß
Neutral General

Larsi 14. Jun 2008 21:53

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Delphi-Quellcode:
if RichEdit1.SelAttributes = [] then
RichEdit1.Font.name := Combobox1.Items.Strings[Combobox1.ItemIndex]
else
RichEdit1.SelAttributes.name := Combobox1.Items.Strings[Combobox1.ItemIndex];
Geht auch nicht: [DCC Fehler] Unit1.pas(79): E2015 Operator ist auf diesen Operandentyp nicht anwendbar

mkinzler 14. Jun 2008 21:55

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Delphi-Quellcode:
if RichEdit1.SelLength = 0

Neutral General 14. Jun 2008 21:55

Re: Fonts in Combobox auslesen und in Richedit verwenden
 
Stimmt, es ist gar kein Set :mrgreen: Sry :oops:

Die Muhkuh 15. Jun 2008 08:46

Re: Einem Richedittext einen Font zuweisen
 
Hi,

ich fasse mal kurz zusammen:

Du überprüft erst, ob überhaupt etwas ausgewählt ist per RichEdit.SelLength > 0. Wenn ja, dann kannst Du SelAttributes.Name := ComboBox1.Text setzen (Du brauchst hier nicht über Items.Strings[...] gehen).

Es muss nicht zwingend auf > 0 geprüft werden. > 0 bedeutet, dass Text ausgewählt ist und die Attribute nur auf den ausgewählten Text angewandt werden. Wenn nichts ausgewählt ist und Du es trotzdem zuweist, dann wird der Text, der dann an dieser Stelle getippt wird, mit den neuen Attributen "erstellt".

Falls Du es auch noch anders rum haben willst (also wenn Du versch. Textformatierungen verwendest und Du willst in der ComboBox die aktuell ausgewählte Schriftart auswählen), dann wäre die schlampige Lösung (die gute darfst Du Dir selbst erarbeiten :) ), dass Du mit einem Timer SelAttributes.Name ausliest und der ComboBox zuweist.

alzaimar 15. Jun 2008 09:23

Re: Einem Richedittext einen Font zuweisen
 
Zitat:

Zitat von Die Muhkuh
...die gute darfst Du Dir selbst erarbeiten :)...

Weil Du sie nicht kennst? :zwinker:

Die Muhkuh 15. Jun 2008 09:28

Re: Einem Richedittext einen Font zuweisen
 
Zitat:

Zitat von alzaimar
Zitat:

Zitat von Die Muhkuh
...die gute darfst Du Dir selbst erarbeiten :)...

Weil Du sie nicht kennst? :zwinker:

Ob meine Lösung gut ist, weiß ich auch nicht, aber ich nutze OnChange und Konsorten zum Aktualisieren der Attribute.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:16 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 by Thomas Breitkreuz