Ver Mensaje Individual
  #2  
Antiguo 30-12-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Probe tu código y funciona de forma correcta, solo lo modifiqué un poco para darle reusabilidad:
Código PHP:
...
#include<clipbrd.hpp>
...

void WinCtrlToClipboardTWinControl *wCtrl )
{
  
TClipboard *cb Clipboard();
  
Graphics::TBitmap *bmp = new Graphics::TBitmap;
  
HDC hdc GetWindowDCwCtrl->Handle );

  
bmp->Width  wCtrl->Width;
  
bmp->Height wCtrl->Height;
  
BitBltbmp->Canvas->Handle00bmp->Widthbmp->Heighthdc00SRCCOPY );
  
cb->Assignbmp );

  
ReleaseDCwCtrl->Handlehdc );
  
delete bmp;

Ejemplo de uso:
Código PHP:
void __fastcall TForm1::Button1Click(TObject *Sender)
{

  if ( 
fFicPer == NULL 
    
fFicPer = new TfFicPerNULL );
  
Graphics::TBitmap *dest fFicPer->QRImage1->Picture->Bitmap;

  
WinCtrlToClipboardthis );
  
dest->LoadFromClipboardFormatCF_BITMAPClipboard()->GetAsHandle(CF_BITMAP), );
  
fFicPer->qFicPer->Preview();

  
delete fFicPer;
  
fFicPer NULL;

Form:


Preview:


Declaré el parámetro de modo que la función pueda recibir cualquier descendiente de TWinControl, de modo que las siguientes llamadas tambien son correctas:
Código PHP:
  WinCtrlToClipboardPanel1 );
  ...
  
WinCtrlToClipboardEdit3 );
  ... 
  
WinCtrlToClipboardButton1 );
  ... 
Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 31-12-2016 a las 01:51:43. Razón: Desglosar función WinCtrlToClipboard
Responder Con Cita