AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Richedittext nach Richedit ?

Ein Thema von Vader · begonnen am 11. Mär 2006 · letzter Beitrag vom 23. Sep 2015
Antwort Antwort
Seite 5 von 5   « Erste     345
DieFliege

Registriert seit: 6. Aug 2013
57 Beiträge
 
Delphi XE4 Professional
 
#41

AW: Richedittext nach Richedit ?

  Alt 23. Sep 2015, 19:44
Hallo zusammen,

ich habe mir diesen Threat raus gesucht, weil ich genau wie von "Brüggendiek" beschrieben zwei RichEdit mit Formatierungen in einem dritten zusammen fügen möchte.

Ich habe mich daher an dem Quelltext von "Brüggendiek" orientiert, jedoch bekomme ich ein unerwünschtes Ergebnis. Könnte es sein, dass ich etwas übersehen habe? Alle drei RichEdit haben bei "PlainText" die Einstellung auf "false". Stelle ich diese auf "true" werden beide Texte ohne Formatierung übernommen.

Irgendwie kann ich mir keinen Reim auf die Ausgabe machen, wenn ich diese wie von "Brüggendiek" beschrieben zusammen füge. Was habe ich übersehen?

Ich habe Euch hier einmal meinen kompletten Quelltext gepostet:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ComCtrls;

type
  TForm1 = class(TForm)
    RichEdit1: TRichEdit;
    Button1: TButton;
    RichEdit2: TRichEdit;
    RichEdit3: TRichEdit;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var
  stream: TStringStream;

begin
  richedit3.SelStart := 0;
  richedit3.SelLength := 0;

  stream := TStringStream.Create ('');
  try
    richedit2.Lines.SaveToStream (stream);
    richedit3.SelText := stream.DataString;
  finally
    stream.Free;
  end;

  richedit3.SelStart := 0;
  richedit3.SelLength := 0;

  stream := TStringStream.Create ('');
  try
    richedit1.Lines.SaveToStream (stream);
    richedit3.SelText := stream.DataString;
  finally
    stream.Free;
  end;
end;


procedure TForm1.FormCreate(Sender: TObject);
begin
  RichEdit1.Clear;
  RichEdit2.Clear;
  RichEdit3.Clear;

  RichEdit1.SelAttributes.Style := [fsBold];
  RichEdit1.SelText := 'BOLD';
  RichEdit1.SelAttributes.Style := [];

  RichEdit2.SelAttributes.Style := [fsItalic];
  RichEdit2.SelText := 'ITALIC';
  RichEdit2.SelAttributes.Style := [];

end;

end.

Wenn ich das "Programm" so ausführe, bekomme ich im RichEdit3 dieses Ergebnis:
richedit3.jpg

Was habe ich übersehen?

LG Micha (aka DieFliege)



Nachtrag:
Ich habe natürlich weiter nach einer Lösung gesucht und dabei rausgefunden, dass es wohl an der "riched32.dll" von Windows liegt. Daher habe ich mich mit der Lösung von Marabu beschäftigt und es damit hin bekommen - Vielen Dank an dieser Stelle an Dich, Marabu.
LG Micha (aka DieFliege)

Geändert von DieFliege (24. Sep 2015 um 11:38 Uhr) Grund: Lösung gefunden
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:59 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