PDA

Ver la Versión Completa : Copiar al portapapeles


johurgi
22-11-2006, 17:57:01
Hola a tod@s de nuevo.

Tengo un problema a la hora de copiar al portapapeles. Tengo una tabla paradox la cual posee memos formateados, que si intento poner directamente en algun componente de delphi se me muestran mal, y la unica solucion que he encontrado para hacerlo es copiar los datos al portapapeles y luego desde el portapapeles copiarlo al componente dbrichedit,richedit....de esta forma si que me mantiene el formato haciendolo a mano. Como podria automatizar este proceso.

Un saludo y gracias de antemano.

yusnerqui
22-11-2006, 19:13:26
Hola, supongo que los memos están formatidos a rtf, si es así el dbrichtedti lo debería entender sin problemas, has probado este componente?

Si lo has hecho y no funciona debes dar más datos al respecto para que podámos ayudarte.

Saludos Yusnerqui

johurgi
22-11-2006, 19:24:01
El problema reside en que los datos fueron metidos desde paradox, lo que hace que delphi no los lea bien, en el caso de que se inserten los datos desde delphi, con el dbrichedit y con el richedit se ve perfectamente.

Lo que quiero conseguir es leer de la tabla un campo memo formateado llevarlo directamente al portapapeles para que no me cambie el formato, y en una tabla auxiliar que me he creado escribir los datos ya actualizados. Ya que cuando te los llevas al portapapeles(ctrl-c directo sobre el campo de la tabla en paradox y ctrl-v sobre el componente de delphi)lo mantiene y actualiza.

yusnerqui
22-11-2006, 19:29:03
Se me olvidaba, si lo que quieres es que de todas forma pase por el portapapeles, cosa que no creo sea lo más indicado, pues debes recurrir a la clase TClipboard que se encuentra en la unidad Clipbrd

saludos :)

yusnerqui
22-11-2006, 19:47:48
También pudieras probar algo como esto aunque en este caso no doy fe de que funcione:


var
Tex : TStringStream;
begin
Tex:= TStringStream.Create(TuTabla.fieldByName('CampoMemo').AsString);
try
RichEdit1.Lines.LoadFromStream(Tex);
finally
Tex.free;
end
end;


En fin son varis las pruebas que puedes hacer hasta tanto no aparezca una idea mejor.

Saludos