cs_Zekez
Messages postés27Date d'inscriptionmardi 25 mai 2004StatutMembreDernière intervention26 septembre 2006
-
29 mars 2005 à 15:25
MorpionMx
Messages postés3466Date d'inscriptionlundi 16 octobre 2000StatutMembreDernière intervention30 octobre 2008
-
30 mars 2005 à 15:03
Bonjour,
je suis en train de faire une application en C# dans laquelle j'ai besoin d'insérer une sorte de printscreen d'une fenêtre dans une bitmap... Donc faire une copie graphique d'une Form et la placer dans une bitmap.
Je ne sais pas du tout comment je peux faire ça, je sais que la méthode bitmap reçoit un paramètre Image... il faudrait alors créer un objet Image mais le problème est tjs le même, je ne sais pas faire le "printscreen" pour remplir l'objet Image...
Merci de bien vouloir m'aider si quelqu'un a une soluce.
MorpionMx
Messages postés3466Date d'inscriptionlundi 16 octobre 2000StatutMembreDernière intervention30 octobre 200857 29 mars 2005 à 21:43
Ceci va te permettre de capturer la forme (ou le control plutot) depuis lequel tu l'appeles, et mettre le resultat dans un leBitmap bmp)
// Les variables Win32
private int WM_PRINT = 0x0317;
private int PRF_CHECKVISIBLE = 0x00000001;
private int PRF_NONCLIENT = 0x00000002;
private int PRF_CLIENT = 0x00000004;
private int PRF_ERASEBKGND = 0x00000008;
private int PRF_CHILDREN = 0x00000010;
private int PRF_OWNED = 0x00000020;
// Le code
Bitmap bmp = new Bitmap(this.Width, this.Height);
Graphics bmpGraphics = Graphics.FromImage(bmp);
IntPtr bmpHdc = bmpGraphics.GetHdc();
cs_Zekez
Messages postés27Date d'inscriptionmardi 25 mai 2004StatutMembreDernière intervention26 septembre 2006 30 mars 2005 à 14:52
Peut-être une petite question...
Je ne sais pas ce que sont exactement ces variables Win32... qu'est-ce qu'elles représentent exactement dans le code? (Pour que je puisse placer des commentaires)
private int WM_PRINT = 0x0317;
private int PRF_CHECKVISIBLE = 0x00000001;
private int PRF_NONCLIENT = 0x00000002;
private int PRF_CLIENT = 0x00000004;
private int PRF_ERASEBKGND = 0x00000008;
private int PRF_CHILDREN = 0x00000010;
private int PRF_OWNED = 0x00000020;