Bonjour à tous les développeurs,
Je souhaiterai faire une copie d'écran d'un panel de ma form afin de la récupérer dans le press papier et l'envoyer comme image dans Word ou Excel.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Wilco![]()
Bonjour à tous les développeurs,
Je souhaiterai faire une copie d'écran d'un panel de ma form afin de la récupérer dans le press papier et l'envoyer comme image dans Word ou Excel.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Wilco![]()
En vrac, à adapter à ton besoin
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 procedure TForm1.Button1Click(Sender: TObject); var bmp:Tbitmap; HDC_Panel:HDC; area:Trect; Canvas_tmp:TCanvas; begin HDC_panel:=GetWindowDC(panel1.handle); bmp:=TBitmap.Create; Canvas_tmp:=TCanvas.create; Canvas_tmp.Handle:=HDC_Panel; bmp.width:=panel1.width; // dimension du bitmap = dimension du panel bmp.height:=panel1.height; area:=rect(0,0,panel1.width,panel1.height); // copy du fond windows bmp.canvas.copyrect(area,Canvas_tmp,area); ReleaseDC(Canvas_tmp.handle,HDC_Panel); // le bitmap bmp contient le resultat // ici, je le copie sur un Timage de la meme taille pour verifier que ca marche image1.picture.assign(bmp); bmp.free; Canvas_tmp.free; end;
merci dd16, ça marche
Encore une fois bravo à ce forum.
Wilco
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager