PDA

Ver la Versión Completa : Insertar al final de RichEdit


jorodgar
25-05-2005, 20:38:52
Quiero insertar al final del RichEdit un caracter.
He visto en uno de los hilos lo siguiente, pero no me sirve
ya que el RichEdit1 mio tiene tambien imágenes incrustadas.
Si consigo la solución os la pongo. Si alguien me puede ayudar
se lo agradecería.

var
a : String;
begin
a := RichEdit1.Text;
Insert('lolo',a,RichEdit1.SelStart+1);
RichEdit1.Text := a;
end;

dec
25-05-2005, 20:55:48
Hola,

Supongo que esto no te valdrá:


RichEdit1.Lines.Add('a'); // esto...
RichEdit1.Lines.Append('a'); // o esto otro...


O tal vez puedas probar con algo así:


var
linea: string;
numLinea: integer;
begin
numLinea := RichEdit.Lines.Count-1;
linea := RichEdit.Lines.Strings[numLinea];
linea := linea + 'a';
RichEdit.Lines.Strings[numLinea] := linea;
end;

jorodgar
26-05-2005, 09:19:41
Tampoco me sirve, mi idea es :
Añadir al final de un RxRichEdit la siguiente linea : prueba [imagen] hola
Hasta el momento solo lo he conseguido con líneas separadas.

procedure TForm1.Button2Click(Sender: TObject);
begin
RxRichEdit1.Lines.add('prueba');
Clipboard.Assign(Image3.Picture);
RxRichEdit1.PasteFromClipboard;
RxRichEdit1.Lines.add('hola');
end;

jorodgar
26-05-2005, 09:41:25
En un RxRichEdit1 tengo el texto--> hola :D saludos :D
Ya consigo reemplazarlo todas las :D por imagenes. Ahora quisiera saber como puedo copiar este RxRichEdit1 al final de otro RxRichEdit1 que ya contiene líneas (chat). Podría hacer que buscará (Findtext) cada vez en el RxRichEdit de destino y reemplazará pero supongo que conforme fueran creciendo las lineas del chat se haría intratable. Por eso solo quiero tratar la última línea introducida en el RxRichEdit.

procedure TForm1.Button2Click(Sender: TObject);
var
n : integer;
begin
// Busca el Texto
n :=RxRichEdit1.FindText(':D',0,Length(RxRichEdit1.Text),[]); // [stMatchCase]);
// Encontrado?
while n>-1 do begin
showmessage(intTostr(n));
// Marcar el texto
RxRichEdit1.SelStart := n;
RxRichEdit1.SelLength := Length(':D');
// Sustituirlo...
Clipboard.Assign(Image3.Picture);
RxRichEdit1.PasteFromClipboard;
n :=RxRichEdit1.FindText(':D',0,Length(RxRichEdit1.Text),[]); // [stMatchCase]);
end;
end;

jorodgar
26-05-2005, 09:48:53
procedure TForm1.Button2Click(Sender: TObject);
var
n : integer;
start:integer;
begin
// Busca el Texto
start:=Length(RxRichEdit1.Text);
RxRichEdit1.Lines.add('hola :D soy yo :D');

n :=RxRichEdit1.FindText(':D',start,Length(RxRichEdit1.Text),[]); // [stMatchCase]);
// Encontrado?

while n>-1 do begin
showmessage(intTostr(n));
// Marcar el texto
RxRichEdit1.SelStart := n;
RxRichEdit1.SelLength := Length(':D');
// Sustituirlo...
Clipboard.Assign(Image3.Picture);
RxRichEdit1.PasteFromClipboard;
n :=RxRichEdit1.FindText(':D',start,Length(RxRichEdit1.Text),[]); // [stMatchCase]);
end;
end;