Ver Mensaje Individual
  #12  
Antiguo 29-02-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Reputación: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Hola Felipe.

Viendo ahora la solución que obtuviste, si te resultó satisfactoria me permito sugerirte que uses el mismo manejador de evento OnGetText para todos esos campos (no tiene que ser un OnGetText por cada campo). También, con tu debido permiso, me tomo la libertad de mejorarlo un poco:

Código Delphi [-]
procedure TfrmPrncpl.QueryCampoRTFGetText(Sender: TField; var Text: String; DisplayText: Boolean);
Var
  AText :String Absolute Text;  // Trampilla para meter el parámetro "Text" al With
begin
  With TRichEdit.Create (Nil) Do  // Construimos el objeto "al vuelo" (sin usar una variable)
    Try
      Visible := False;  // Evitamos efecto de "parpadeo"
      Parent := frmPrncpl;  // Para que no marque error al leer su texto
      Text := Sender.AsString;  // Asignamos el valor de cualquiera que sea el campo RTF en turno (Sender)
      AText := Lines.Text;  // Esto devuelve texto plano aunque PlainText sea False
    Finally  // Try-Finally asegura que siempre se llamará a lo que esté en Finally (aunque haya error)
      Free;  // Convencionalmente es preferible llamar a Free que a Destroy 
    End;
end;

Sin olvidar que debe estar ComCtrls en el Uses.

Saludos.
Responder Con Cita