tequilasurlaterre
Messages postés34Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention16 mars 2006
-
5 déc. 2005 à 19:35
tequilasurlaterre
Messages postés34Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention16 mars 2006
-
7 déc. 2005 à 16:04
bonjour a tous !!!
Voila mon probleme.... sur lequel je galere grave !!!
j'ai creer un Bdd avec des TpageControl.... ou il y a :
5 TBEdit, 4 TEdit, 1 DBmemo.sur un meme Tpage.
je voudrais pouvoir imprime, 3 TEdit et le DBMemo mais rien d'autre. et
la je plante j'arrive a imprime, mais tout !!! et je cherche a imprime
une parti seulement et choisis par moi.
mon but c'est que j'ai en haut les donnees de mes clients ,nom adresse,
ect et dans le DBMemo les reparations efectuez et les 3 TEdit se sont
les totos.
voila ...........j'espere avoir ete clair dans ma question?
type
TForm1 = class(TForm)
Button1: TButton;
Image1: TImage;
procedure Button1Click(Sender: TObject);
private
Procedure Capture;
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Capture;
var
vCanvas: TCanvas;
vRect :Trect;
vBmp :TBitmap;
begin
vCanvas:=TCanvas.Create;
Try
vBmp:=Tbitmap.Create;
Try
//Trouve le handle de la fenêtre active
vCanvas.Handle:=GetWindowDC(GetForeGroundWindow);
//Charge avec sa position et sa taille
GetWindowRect(GetForeGroundWindow,vRect);
//Largeur du Bitmap
vBmp.Width:=vRect.Right-vRect.Left;
//Hauteur du Bitmap
vBmp.Height:=vRect.Bottom-vRect.Top;
//Copie le Canvas de la fenêtre dans le Bitmap
BitBlt(vBmp.Canvas.Handle,0,0,vBmp.Width,vBmp.Height,vCanvas.Handle,0,0, SRCCOPY);
Image1.Picture.Graphic.Assign(vBmp);
Finally
vBmp.Free;
End;
Finally
vCanvas.Free;
End;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Capture;
end;
vaughan
Messages postés198Date d'inscriptionmardi 6 août 2002StatutMembreDernière intervention29 octobre 2008 7 déc. 2005 à 14:47
Voici un bout de code qui fonctionne trés bien que je viens de faire sous haute inspiration. Il copie dans un TImage la fenêtre active. Il te reste à jouer sur les dimension :
procedure TForm1.Capture;
var
vCanvas: TCanvas;
vRect :Trect;
vBmp :TBitmap;
begin
vCanvas:=TCanvas.Create;
Try
vBmp:=Tbitmap.Create;
Try
//Trouve le handle de la fenêtre active
vCanvas.Handle:=GetWindowDC(GetForeGroundWindow);
//Charge avec sa position et sa taille
GetWindowRect(GetForeGroundWindow,vRect);
//Largeur du Bitmap
vBmp.Width:=vRect.Right-vRect.Left;
//Hauteur du Bitmap
vBmp.Height:=vRect.Bottom-vRect.Top;
//Copie le Canvas de la fenêtre dans le Bitmap
BitBlt(vBmp.Canvas.Handle,0,0,vBmp.Width,vBmp.Height,vCanvas.Handle,0,0, SRCCOPY);
Image1.Picture.Graphic.Assign(vBmp);
Finally
vBmp.Free;
End;
Finally
vCanvas.Free;
End;
end;
tequilasurlaterre
Messages postés34Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention16 mars 2006 7 déc. 2005 à 15:51
re-bonjour vaughan
merci pour ton code c'est kool de ta part ...
mais quand je le copie sur une fiche il plante sur procedure ??
ou dois-je insere ton code exactement...oups.... n'oublie pas que je suis un debutant
alors si tu pouvais poussé un peut plus dans le details...
merci encore pour ton aide
@+
Teq