Copier une Form dans une Picturebox [Résolu]

Signaler
Messages postés
898
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
22 mai 2021
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjour,
Pour copier une Form dans une Picturebox j'utilise BitBlt .hdc, ...
qui fonctionne très bien sauf qu'il ne copie pas la fenêtre complète, exemple
Fenêtre complète

Image copiée


Comment puis-je copier toute la fenêtre dans une picbox ?
Merci d'avance pour votre aide

4 réponses

Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
6 juin 2021
155
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
Bonjour, NHenry,
Il y a bien plus simple, en moins de 5 lignes de code.
Mais le "caractère" démontré du demandeur est tel, que la moindre aide venant de moi serait perçue par lui comme un frein à toute aide venant d'autres.
Je ne reviendrai donc ici qu'après qu'aucune autre réponse simple n'y aura été présentée. J'attendrai quelques jours.
Messages postés
898
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
22 mai 2021
2
Merci à U c'est foutu pour sa réponse pertinente, comme d'habitude, je n'en attendais pas moins.
Entretemps j'ai trouvé une solution toute simple que je n'expliquerai pas vu le caractère démontré du répondeur.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
Ouais ...
Bon, juste pour ceux qui chercheraient :
un form Form1 et un form Form2 doté d'une picturebox Picture1 dont la propriété Autoredraw est à True et ce code tout bête :
Private Declare Function PrintWindow Lib "user32" (ByVal hWnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long

Private Sub Command1_Click()
Form2.Move 0, 0, Form1.Width, Form1.Height
Form2.Picture1.Move 0, 0, Form1.Width, Form1.Height
PrintWindow Me.hWnd, Form2.Picture1.hDC, 0
Form2.Show
End Sub

Dans cet exemple, j'ai mis l'image de Form1 dans une Picturebox de Form2
Si d'aucuns voudraient (contre toute attente et logique) avoir cette image de Form1 dans une picturebox de Form1) : qu'ils lèvent le doigt (ce n'est pas compliqué non plus et avec très peu de code également).