AGB  ·  Datenschutz  ·  Impressum  







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

RichEdit formatieren

Ein Thema von Nalincah · begonnen am 6. Nov 2003 · letzter Beitrag vom 7. Nov 2003
Antwort Antwort
Benutzerbild von Nalincah
Nalincah

Registriert seit: 18. Jul 2003
898 Beiträge
 
Delphi 6 Professional
 
#1

RichEdit formatieren

  Alt 6. Nov 2003, 09:44
Ich bins nochmal..Hab noch mal eine Frage zum RichEdit..Diesmal das normale..

Wenn ich diesen Code ausführe, hab ich nen schönen roten Text da stehen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  RichEdit1.SelAttributes.Color := clRed;
  RichEdit1.Lines.Add('asda');
end;
Was mach ich aber wenn ich so einen Text hinzufügen will:

"Hab irgendwie kein Plan"

???

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  RichEdit1.SelAttributes.Style := [fsUnderLine];
  RichEdit1.Text := RichEdit1.Text + 'Hab';
  RichEdit1.SelAttributes.Style := [fsUnderLine, fsItalic];
  RichEdit1.Text := RichEdit1.Text + 'irgendwie';
  .....
end;
Sebastian
Ehemals bekannt als General2004
  Mit Zitat antworten Zitat
Benutzerbild von Sourcemaker
Sourcemaker

Registriert seit: 3. Sep 2003
Ort: Westoverledingen
264 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: RichEdit formatieren

  Alt 6. Nov 2003, 10:50
Hi Sebastian,

diesen Quellcode benutze ich in meiner RTF-Form (ist von den Demo abgeleitet).
Im Gegensatz zum Demo-Code werden hier alle Style richtig angewandt und kombiniert.
Für dich sollte es möglich sein die grundsätzliche Technik abzuleiten.

Delphi-Quellcode:
procedure TFRtfForm.SetStyle(lSet: Boolean; xStyle: TFontStyles);
var
   i : integer;
   nStart : integer;
   nLength : integer;
   xMerkStyle: TFontStyles;
   nStartMerker : integer;
   lCopy : Boolean;
   edText3 : TRxRichEdit;
begin
   bUpdating := True;
   try
      nStart := edText.SelStart;
      nLength := edText.SelLength;
      if nLength = 0 then
      begin
         if lSet then
            edText.SelAttributes.Style := edText.SelAttributes.Style + xStyle
         else edText.SelAttributes.Style := edText.SelAttributes.Style - xStyle;
         Exit;
      end;
      lCopy := False;
      edText3 := edText;
      i := nStart+1;
      edText3.SelStart := i;
      edText3.SelLength := 1;
      nStartMerker := nStart;
      xMerkStyle := edText3.SelAttributes.Style;
      while i < nStart+nLength do
      begin
         edText3.SelStart := i;
         if xMerkStyle = edText3.SelAttributes.Style then
         begin
            Inc(i);
            Continue;
         end;
         if not lCopy then
         begin
            CopyRxRichEditText(edText, edText2);
            edText3 := edText2;
            lCopy := True;
            edText3.SelStart := i;
         end;
         xMerkStyle := edText3.SelAttributes.Style;
         edText3.SelStart := nStartMerker;
         edText3.SelLength := i-nStartMerker-1;
         if lSet then
            edText3.SelAttributes.Style := edText3.SelAttributes.Style + xStyle
         else edText3.SelAttributes.Style := edText3.SelAttributes.Style - xStyle;
         nStartMerker := i-1;
         Inc(i);
      end;

      edText3.SelStart := nStartMerker;
      edText3.SelLength := i-nStartMerker;
      if lSet then
         edText3.SelAttributes.Style := edText3.SelAttributes.Style + xStyle
      else edText3.SelAttributes.Style := edText3.SelAttributes.Style - xStyle;

      if lCopy then
         CopyRxRichEditText(edText3, edText);
      edText.SelStart := nStart;
      edText.SelLength := nLength;
   finally
      bUpdating := False;
   end;
end;
Gruß

Frank
Frank
  Mit Zitat antworten Zitat
Benutzerbild von Nalincah
Nalincah

Registriert seit: 18. Jul 2003
898 Beiträge
 
Delphi 6 Professional
 
#3

Re: RichEdit formatieren

  Alt 7. Nov 2003, 13:35
Danke, hat weitergeholfen
Sebastian
Ehemals bekannt als General2004
  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 14:58 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