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 Teil einer Zeile Fett schreiben (https://www.delphipraxis.net/68747-teil-einer-zeile-fett-schreiben.html)

kenuvis 4. Mai 2006 18:51


Teil einer Zeile Fett schreiben
 
hi

ich hab ein richedit object. nun kommt ein text rein (name : blubblablubb), der der text bis zum doppelpunkt soll fett geschrieben werden. kann mir mal bitte fix jemand sagen wie das geht?

mfg

Mackhack 4. Mai 2006 19:00

Re: Teil einer Zeile Fett schreiben
 
Guck mal in der OH nach Delphi-Referenz durchsuchenSelText, Delphi-Referenz durchsuchenSelStart usw. nach. Sollte helfen!

kenuvis 4. Mai 2006 19:01

Re: Teil einer Zeile Fett schreiben
 
oh ok danke, hab ich doch schonmal einen anfang meiner suche.

Klaus01 4. Mai 2006 19:04

Re: Teil einer Zeile Fett schreiben
 
Du kannst die Zeile auseinandernehmen

Delphi-Quellcode:
s:='name : blubblablubb'
textBold:='\b '+copy(s,1,pos(':',s)-1)+' \b';
textnormal:=copy(s,pos(':',s)+1,length(s));
Die Attribute setzen und wieder zusammensetzen.
Hoffe, ich habe die Attirbute für bold richtig gesetzt.

Grüße
Klaus

kenuvis 4. Mai 2006 19:10

Re: Teil einer Zeile Fett schreiben
 
cool danke, werd es gleich mal ausprobieren.

3_of_8 4. Mai 2006 19:12

Re: Teil einer Zeile Fett schreiben
 
Ich habs ausprobiert, allerdings werden (zumindest bei mir) die RichText-Steuerzeichen nicht geparst.

kenuvis 4. Mai 2006 19:16

Re: Teil einer Zeile Fett schreiben
 
bei mir das gleiche......
jetzt steht bei mir da '/b name /b blubblablubb'
1. doppelpunkt fehlt (ist aber keine große sache)
2. die dinger werden mit angezeigt.

Khabarakh 4. Mai 2006 19:17

Re: Teil einer Zeile Fett schreiben
 
Zitat:

Zitat von 3_of_8
Ich habs ausprobiert, allerdings werden (zumindest bei mir) die RichText-Steuerzeichen nicht geparst.

Logisch, wenn du sie nicht als solche behandelst ;) .
Delphi-Referenz durchsuchenTRichtEdit.PlainText

kenuvis 4. Mai 2006 19:21

Re: Teil einer Zeile Fett schreiben
 
ich bin gerade etwas daneben....

Delphi-Quellcode:
   richedit1.PlainText;
richedit1.lines.add('\b '+copy(temp,1,pos(':',temp)-1)+' \b'+copy(temp,pos(':',temp)+1,length(temp)));
kann mir mal bitte fix jemand sagen wo hier der fehler ist...

Die Muhkuh 4. Mai 2006 19:31

Re: Teil einer Zeile Fett schreiben
 
Hi,

es muss

Delphi-Quellcode:
RichEdit1.PlainText := true {oder false};
heißen

kenuvis 4. Mai 2006 19:34

Re: Teil einer Zeile Fett schreiben
 
diese komischen /b werden immernoch mit angezeigt.

Die Muhkuh 4. Mai 2006 19:37

Re: Teil einer Zeile Fett schreiben
 
Delphi-Quellcode:
richedit1.lines.add('\b '+copy(temp,1,pos(':',temp)-1)+' \b'+copy(temp,pos(':',temp)+1,length(temp)));
Guck dir das nochmal ganz genau an. Vorallem die Stellen mit "'\b ' +" ;-)

Klaus01 4. Mai 2006 19:40

Re: Teil einer Zeile Fett schreiben
 
Sorry, dieser Weg ist wohl nicht begehbar.

Damit meine ich den String mit den Controlzeichen für FettDruck zu versorgen.
Das RichEditControl ist wohl so "intelligent" das \b als Text zu interpretieren
und nicht als Befehl zum Fettschreiben.
Der richtige Weg wäre wohl mit SelText und SelAttributes was zu machen.
Ein Link dazu: http://groups.google.de/group/borlan...4707f1ec25c8ab

Habe das falsch eingeschätzt.

Grüße
Klaus

kenuvis 4. Mai 2006 19:42

Re: Teil einer Zeile Fett schreiben
 
Zitat:

Zitat von Spider
Delphi-Quellcode:
richedit1.lines.add('\b '+copy(temp,1,pos(':',temp)-1)+' \b'+copy(temp,pos(':',temp)+1,length(temp)));
Guck dir das nochmal ganz genau an. Vorallem die Stellen mit "'\b ' +" ;-)

mh.. irgendwie ist heut echt nicht mein tag, also redet nicht in rätseln... bitte.

Die Muhkuh 4. Mai 2006 19:44

Re: Teil einer Zeile Fett schreiben
 
Code:
richedit1.lines.add([color=#ff003f]'\b '[/color]+copy(temp,1,pos(':',temp)-1)+[color=#ff001f]' \b'[/color]+copy(temp,pos(':',temp)+1,length(temp)));
Jetzt einleuchtend? ;-)

kenuvis 4. Mai 2006 19:49

Re: Teil einer Zeile Fett schreiben
 
ok, lass mich raten, die attribute sind falsch...? :mrgreen:
kannst du mir bitte sagen wie die richtig heißen.

so:
Delphi-Quellcode:
RichEdit1.SelAttributes.Style := RichEdit1.SelAttributes.Style + [fsBold];
  RichEdit1.SelText := 'name';
  RichEdit1.SelAttributes.Style := RichEdit1.SelAttributes.Style - [fsBold];
  RichEdit1.SelText := ': ' + 'blub';

zecke 4. Mai 2006 20:07

Re: Teil einer Zeile Fett schreiben
 
Probier mal ein wenig mit den ' herum, denn alles was in der Klammer innerhalb von ' steht wird als string behandelt und nicht als irgendein befehl zum verarbeiten.

Flare 4. Mai 2006 20:25

Re: Teil einer Zeile Fett schreiben
 
Müsste es nicht
Delphi-Quellcode:
RichEdit1.SelAttributes.Style := [fsBold];
Zumindest habe ich dies aus der Quelle entnommen, die Klaus01 gepostet hat.


Flare

Die Muhkuh 4. Mai 2006 20:27

Re: Teil einer Zeile Fett schreiben
 
Jain,

wenn du das so machst wie du, Flare, dann hast nur fsBold.

Falls aber davor schon fsItalic "da war", dann hast du fsItalic + fsBold. Bei deiner Variante hättest du nur fsBold.

kenuvis 5. Mai 2006 09:22

Re: Teil einer Zeile Fett schreiben
 
mensch leute, das was ich gepostet habe, funzelt tadellos. da müsst ihr euch nun nicht weiter rumstreiten....


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