AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

RichEdit. String in Bold hinzufügen.

Ein Thema von k4ni · begonnen am 14. Feb 2008 · letzter Beitrag vom 14. Jan 2014
Antwort Antwort
k4ni

Registriert seit: 17. Jul 2007
Ort: Ulm
258 Beiträge
 
Delphi 7 Enterprise
 
#1

RichEdit. String in Bold hinzufügen.

  Alt 14. Feb 2008, 13:02
Hallo DP,

ich hab schon fleißig gesucht, aber nur möglichekiten gefunden in denen man beim OnChange oder so strings sucht und dann Bold macht.
Nur ich will schon von anfang an einen String im bold format hinzufügen. Also mit

RichEdit.Lines.Add(String, fsBold);
Oder so ähnlich :/

danke
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: RichEdit. String in Bold hinzufügen.

  Alt 14. Feb 2008, 13:07
SelAttributes
Blackheart
  Mit Zitat antworten Zitat
k4ni

Registriert seit: 17. Jul 2007
Ort: Ulm
258 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: RichEdit. String in Bold hinzufügen.

  Alt 14. Feb 2008, 13:34
Ohh, danke.
Doch wie kann ich eine einzige linie machen bei der, e.g. der erste teil Fett ist, und der 2. normal?
Weil das:
Delphi-Quellcode:
RichEdit1.SelAttributes.style :=
RichEdit1.SelAttributes.style + [fsBold];
RichEdit1.Lines.Add('Das ist fett');
RichEdit1.SelAttributes.style :=
RichEdit1.SelAttributes.style - [fsBold];
RichEdit1.Lines.Add('Das nicht');
Nur das macht natürlich 2 linien.
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: RichEdit. String in Bold hinzufügen.

  Alt 14. Feb 2008, 13:39
Delphi-Quellcode:
with RichEdit do
  begin
   SelAttributes.Style := [fsBold];
   Lines.Add('Fett');
   SelAttributes.Style := [];
   Lines.Add('Nicht ganz so fettig');
end;
Blackheart
  Mit Zitat antworten Zitat
k4ni

Registriert seit: 17. Jul 2007
Ort: Ulm
258 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: RichEdit. String in Bold hinzufügen.

  Alt 14. Feb 2008, 15:09
hmm ist im prinzip das gleiche, und macht auch das gleiche .
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#6

Re: RichEdit. String in Bold hinzufügen.

  Alt 14. Feb 2008, 15:12
Klar, Lines.Add fügt ja auch eine neue Zeile ein. Ein etwas umständliches Beispiel:
Delphi-Quellcode:
var s1, s2: string;
begin
  s1 := 'fett ';
  s2 := 'nicht mehr fett';
  RichEdit1.SelAttributes.Style := [fsBold];
  RichEdit1.Lines.Add(s1 + s2);
  RichEdit1.SelStart := Length(RichEdit1.Text) - 2 - Length(s2);
  RichEdit1.SelLength := Length(s2);
  RichEdit1.SelAttributes.Style := [];
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
k4ni

Registriert seit: 17. Jul 2007
Ort: Ulm
258 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: RichEdit. String in Bold hinzufügen.

  Alt 20. Mai 2008, 02:30
Zitat von DeddyH:
Klar, Lines.Add fügt ja auch eine neue Zeile ein. Ein etwas umständliches Beispiel:
Delphi-Quellcode:
var s1, s2: string;
begin
  s1 := 'fett ';
  s2 := 'nicht mehr fett';
  RichEdit1.SelAttributes.Style := [fsBold];
  RichEdit1.Lines.Add(s1 + s2);
  RichEdit1.SelStart := Length(RichEdit1.Text) - 2 - Length(s2);
  RichEdit1.SelLength := Length(s2);
  RichEdit1.SelAttributes.Style := [];
end;
[Bump]
Ich hab grad totale probleme mit deinem beispiel. Wie du bereits erwähnt hast ist dein beispiel umständlich
Also ich möchte so eine linie hinzufügen

Code:
[bold][color=gray]>>[/color=gray] [italic][color=black]name[/italic][/color=black] [color=gray]msg[/color=gray][/bold]
name und msg sind string-variablen.
Gibt es dafür keine einfach lösung?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: RichEdit. String in Bold hinzufügen.

  Alt 20. Mai 2008, 09:21
Moin,

wenn du einen Namen und eine Msg in deinem Chat-Fenster formatiert anzeigen willst, dann baust du dir eine Routine, die genau das tut - nicht mehr und nicht weniger:

Delphi-Quellcode:
procedure AddMessage(re: TRichEdit; const name, msg: string);
begin
  re.SelStart := MaxInt;
  re.SelAttributes.Color := clGray;
  re.SelAttributes.Style := [fsBold];
  re.SelText := '>> ';
  re.SelAttributes.Color := clBlack;
  re.SelAttributes.Style := [fsBold, fsItalic];
  re.SelText := name + ' ';
  re.SelAttributes.Color := clGray;
  re.SelAttributes.Style := [fsBold];
  re.SelText := msg + sLineBreak;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
Gutelo

Registriert seit: 29. Sep 2013
152 Beiträge
 
#9

AW: RichEdit. String in Bold hinzufügen.

  Alt 14. Jan 2014, 00:36
Hallo

Dieser Thread ist zwar schon alt, aber da ich ueber ein aehnliches Problem gestolpert bin, moechte ich hier noch eine Information hinzufuegen.

Die Stringsuche mit Pos macht anscheinend Probleme wenn der Text des RichEdit Sonderzeichen enthaelt. Ich hatte ein RichEdit mit Carriage Returns (#13) im String. Damit waren auch die Pos Angaben falsch. Geloest habe ich es indem ich RichEdit.FindText verwende, d.h.:

MarkStart := RichEdit1.FindText(KeyWords[a],0, Length(RichEdit1.Text),[stWholeWord]);
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:57 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