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 Mehr zeiliger Text(Ansi-String) in Richedit (https://www.delphipraxis.net/114517-mehr-zeiliger-text-ansi-string-richedit.html)

Gr0by 26. Mai 2008 19:15


Mehr zeiliger Text(Ansi-String) in Richedit
 
Hallo erstmal,

ich habe folgendes Problem:
Ich schreibe gerade ein Programm,welches die Zeoslib Componente(mysql) benutzt.
Nun habe ich ein Richedit wo der User einen "Comment" scheiben soll... das einlesen in einen string
funzt,da hab ich schon etwas gefunden,aber beim auslesen der Datenbank und Formatiert(nur zeilenumbruch und einrücken) in einen Richedit einfühgen,dort komme ich nicht weiter...zb.mir fehlt komplett der Ansatz :wall: Ich habe auch schon daran gedacht eine Textdatei zu erstellen und dann über loadfromfile ,den Text einzulesen.Aber das wäre zu unsicher!

Ich hoffe ihr könnt mir helfen mfg Gr0by.

ps:Mir ist kein besser Titel eingefallen :gruebel:

michaelg 27. Jun 2008 02:56

Re: Mehr zeiliger Text(Ansi-String) in Richedit
 
Probier mal das:

Delphi-Quellcode:
  const //oder "var", je nach Delphi-Version
    StdRichFont:String='Arial';
    StdRichSize:Integer=11;
    StdRichStyle:tFontStyles=[];
    StdRichColor:tColor=clBlack;

  procedure SetRichEditText(RichEdit:tRichEdit; Text:String);
    var
      ms:tMemoryStream;
    begin
      if comparetext('{\RTF',copy(text,1,5))<>0 then begin
        RichEdit.Text:=Text;
        RichEdit.SelectAll;
        RichEdit.SelAttributes.Name:=StdRichFont;
        RichEdit.SelAttributes.Size:=StdRichSize;
        RichEdit.SelAttributes.Style:=StdRichStyle;
        RichEdit.SelAttributes.Color:=StdRichColor;
        RichEdit.Paragraph.FirstIndent:=0;
        RichEdit.Paragraph.LeftIndent:=0;
        RichEdit.Paragraph.Numbering:=nsNone;
        RichEdit.Paragraph.RightIndent:=0;
        RichEdit.Paragraph.TabCount:=0;
      end else begin
        ms:=tMemoryStream.Create;
        ms.Write(Text[1],Length(Text));
        ms.Position:=0;
        RichEdit.PlainText:=False;
        RichEdit.Lines.LoadFromStream(ms);
        ms.Free;
      end;
      RichEdit.SelStart:=0;
      RichEdit.SelLength:=0;
    end;


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