Hola tengo el siguiente código que lo que hace es:
1º) copiar
la imagen de la ficha Form1 en un componente Bitmap y
2º) pega dicha imagen en la ficha Form2
//---------------------------------------------------------------------------void __fastcall TForm1::Button1Click(TObject *Sender)
{
//Creamos el componente BitmapGraphics::TBitmap *BitmpPrueba = new Graphics::TBitma();
//Copiamos la imagen de la Form en un BitmapCopyControlImage(Form1, BitmpPrueba); //Tb se podría poner Screen->ActiveForm
//Dibujamos el Bitmap en una nueva formForm2->Canvas->Draw(0,0,BitmpPrueba);
//La mostramosForm2->Show();
delete BitmpPrueba;
}
- Aqui está el código del Procedimiento que copia la imagen de la Form1 a un Bitmap:
//DESCRIPICION: Se pretende capturar en un BitMap un control cualquiera que se le pasa como parámetro.void TForm1::CopyControlImage(TWinControl *Control,Graphics::TBitmap * BitmpPrueba){
HDC DC; //Pasar de Delphi a Builder C++ --> esto para que sirve???//Ajustamos las dimensiones del bitmap BitmpPrueba a las del ControlBitmpPrueba->Width = Control->Width;
BitmpPrueba->Height = Control->Height;
//Copia de la imagen de la Form en el control Bitmap BitmpPrueba//--------------------------------------------------------------------Pasar de Delphi a Builder C++ estas instruccionesDC.GetWindowDC(Control->Handle);
BitBlt(BitmpPrueba->Canvas->Handle, 0, 0, Control->Width, Control->Height, DC, 0, 0, SRCCOPY);
ReleaseDC(Control->Handle, DC); //--------------------------------------------------------------------}
- Lo que no sé es como realizar la copia de la imagen de la Form1 al Bitmap, este código al parecer lo puede hacer, pero está en Delphi. Si alguien sabe un equivalente a este código para Builder C++ le estaría muy agradecido.
1 Saludo.