Ver Mensaje Individual
  #4  
Antiguo 19-07-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Reputación: 25
Caro Va por buen camino
Hola jusaso, como te dice ecfisa en su codigo de ejemplo solo esta seleccionando el producto por lo que el final es el Length del producto.

No deberías borrar el RichEdit sino trabajar sobre el contenido del mismo RichEdit, yo seleccionaría las líneas que estan antes y despues del texto que se quiere mostrar y eliminarlas.

Código Delphi [-]
procedure BorrarSeleccion;
var
 IniSelect, FinSelect : Integer;
begin
 //Inicio de la selección
 IniSelect := RichEdit1.Perform(EM_LINEFROMCHAR,RichEdit1.SelStart,0);
 //Fin de la selección
 FinSelect := RichEdit1.Perform(EM_LINEFROMCHAR,RichEdit1.SelStart + RichEdit1.SelLength,0);
 
 for i:=IniSelect to FinSelect do
  RichEdit1.Lines.Delete(IniSelect);
end;
...............................................................
...............................................................
...............................................................
 nIni := AnsiPos('1234', Richedit1.Text);
 nFin := AnsiPos('1235', Richedit1.Text);
 
 Richedit1.SelStart := nFin;
 Richedit1.SelLength := Length(Richedit1.Text);
 BorrarSeleccion;
 
 Richedit1.SelStart := 0;
 Richedit1.SelLength := nIni;
 BorrarSeleccion;

el código quedaría mas o menos así, talvez tengas que ajustar algo.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita