Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 20-02-2007
Flecha Flecha is offline
Miembro
 
Registrado: nov 2006
Posts: 59
Poder: 20
Flecha Va por buen camino
Exclamation Una cosita más


De nada, hombre. Para eso estamos.

Por cierto acabo de acordarme de que no es necesario recurrir al TMemo para utilizar el Clipboard.

Existe una unidad llamada ClipBrd que implementa el uso de objetos TClipboard, los cuales permiten trabajar con el ClipBoard de Windows.

A continuación el mismo truco que antes, pero con el uso de la unidad ClipBrd.

Código Delphi [-]
procedure TMiForm.PegarDatos;
var x:integer;
begin
      x:=0;
      Clipboard.Clear;                     // Borrar el contenido del ClipBoard
      Clipboard.SetTextBuf(Datos.GetText); // Copiar texto en el ClipBoard
      try
        repeat
          try
            MiExcel.ActiveSheet.Paste( MiExcel.ActiveSheet.Cells[ 1,1 ], False);
            break;
          except
            inc(x);
            if x>=20 Then raise;
          end;
        until false;
      finally
        Clipboard.Clear; // Borrar el contenido del ClipBoard
      end;
      FilasDatos := 0;
      Datos.Clear;
end;

En este ejemplo Datos es del tipo TStringList. ClipBoard no es un objeto, sino una función perteneciente a la unidad ClipBrd que retorna un objeto TClipBoard. El método SetTextBuf es el que copia texto en el ClipBoard de Windows. Este método recibe un PChar, por eso le paso el GetText del TStringList en vez del Text.
En este ejemplo, además, el ClipBoard de Windows queda vacío después de cada copia.

Como dije antes, el lado bueno de este truco es la velocidad de copiado sobre el documento Excel. Pero olvidé decir que hay que tener cuidado con los posibles copy-paste que el usuario esté haciendo por otro lado mientras este proceso se está ejecutando. Si el documento Excel que estás construyendo es tan sumamente grande que aunque utilices este truco, tarda mucho tiempo en terminarse de construir, el usuario podría aprovechar su tiempo abriendo otra aplicación distinta (por ejemplo un documento Word) para trabajar con ello mientras tu proceso termina. Los copy-paste que el usuario haga en esa otra aplicación podrían interferir perjudicialmente en la creación de tu documento Excel. Podrían copiarse en tu Excel los copy que el usuario hace en su Word, o copiarse sobre el Word del usuario lo que estas intentando exportar a tu documento Excel.

No todo podían ser buenas noticias.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como utilizar Apis? JoeyJordison Varios 5 12-01-2007 21:48:52
como Utilizar una DLL de VB KaTo Varios 0 30-05-2004 19:01:30
como utilizar el UpdateSQL Irina SQL 10 17-03-2004 15:35:39
Como utilizar un DCR y PAS andrestsas Varios 1 26-10-2003 19:31:58
como utilizar sql plus fcran Oracle 2 10-09-2003 02:44:01


La franja horaria es GMT +2. Ahora son las 04:01:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi