![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#2
|
|||
|
|||
|
ya tengo la solucion
en las declaraciones publicas //Boton a mostrar BtnMPrint: TBitBtn; //Evento para imprimir en el reporte Procedure BtnPrintM(Sender : TObject); //Copia la imagen del del grafico en el ClipBoard Function CopyToClipBoard:tBitmap; //Envia el boton al frente Procedure botonAlFrente; En el constructor {coloca un boton sobre la opcion de imprimir del control TChartFX, por que este evento no se puede heredar de dicho control y necesito modificarlo asi que creo un control y le asigno el evento que necesito} BtnMPrint:=TBitBtn.Create(self); BtnMPrint.top:=4; BtnMPrint.Left:=97; BtnMPrint.Width:=23; BtnMPrint.Height:=23; BtnMPrint.OnClick := BtnPrintM; BtnMPrint.Parent:=self; BotonAlFrente; Procedimiento //Retorna la imagen del grafico function TdGrafico.CopyToClipBoard: tBitmap; var BMP:tBitmap; i:Integer; begin BMP := tBitmap.Create; try i:=FChart.CopyBitmap; Bmp.LoadFromClipBoardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0); Result:=BMP; finally BMP.Free; end; end; //Imprime en el un quitreport procedure TdGrafico.BtnPrintM(Sender: TObject); var ImpGrafico:TImpGrafico;//Este es un Qreport un Qrimage bmp:tBitmap; i:integer; begin ImpGrafico := tImpGrafico.Create(Self); try BMP := TBitmap.Create; try Bmp:=CopyToClipBoard; ImpGrafico.Grafico.Picture.Bitmap:=Bmp; ImpGrafico.Refresh; ImpGrafico.Prepare; ImpGrafico.PreviewModal; finally BMP.Free; end; finally ImpGrafico.Free; end; end; //Envia el boton al frente procedure TdGrafico.botonAlFrente; begin BtnMPrint.BringToFront; end; No es la solucion mas elegante pero funciona. Lo unico que me falta es darle el icono a el boton, pero no se como. Gracias |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|