![]() |
RichEdit formatieren
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:
Was mach ich aber wenn ich so einen Text hinzufügen will:
procedure TForm1.Button1Click(Sender: TObject);
begin RichEdit1.SelAttributes.Color := clRed; RichEdit1.Lines.Add('asda'); end; "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; |
Re: RichEdit formatieren
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:
Gruß
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; Frank |
Re: RichEdit formatieren
Danke, hat weitergeholfen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:03 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