Copier une PictureBox dans le presse-papier [Résolu]

Arnal88 96 Messages postés samedi 21 octobre 2006Date d'inscription 25 avril 2009 Dernière intervention - 12 nov. 2006 à 17:26 - Dernière réponse : Arnal88 96 Messages postés samedi 21 octobre 2006Date d'inscription 25 avril 2009 Dernière intervention
- 12 nov. 2006 à 20:00
Bonjour,
Je développe actuellement un oscilloscope sur PC.
J'aimerais pouvoir faire une copie de l'écran de mon oscillo dans le presse-papier Windows, mais je n'y parviens pas :
l'écran de l'oscillo est une picturebox sur laquelle est tracée la courbe, mais la picturebox contient également des objets "shape" pour dessiner les axes...
J'utilise :
   Clipboard.Clear
   Clipboard.SetData PictureBox1.Image
mais cette méthode ne copie que la courbe, et pas les axes qui sont également contenus dans la picturebox !!
Comment faire pour copier l'intégralité de la picturebox, à la manière d'un "imprimer-écran" ?
Merci pour votre aide...
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 12 nov. 2006 à 18:03
3
Merci
Il n'est pas astucieux d'utiliser des shapes pour les axes, si tu veux ensuite avoir la possibilité de mettre l'ensemble dans le presse-papier.
Il vaut mieux utiliser la méthode Line qui, elle, dessine réellement dans ta pictureBox..

Ceci étant dit, si tu tiens absolument à garder tes axes sous forme de shapes, il te faudra alors, en effet, faire une copie de la portion d'écran correspondant au rectangle de ta PictureBox (calculs à faire), puis envoyer dans ton presse-papier l'image de cette portion d'écran. Tout celà est bien évidemment possible mais plutôt scabreux et, surtout, ne respectera pas les dimensions réelles de ta picturebox, leur substituant celles de l'affichage (plutôt facheux notamment si, pour des raisons quelconques, on a redimensionné l'affichage seul, la véritable image (à ses dimensions normales, donc) se trouvant dans une pictureBox "miroir" non affichée.

Rien ne t'empêche enfin, si tu tiens tant que celà à tes shapes, de rendre ces dernières invisibles un  instant et de leur substituer, pendant ce même instant, des Lines réelles (tu peux toujours, si tu souhaites ensuite revenir à l'image ans les Lines, utiliser une seconde picturebox en tremplin, soit pour y travailler, soit popur restituer l'images sans les lines). Le tout me parait relever beaucoup plus de la construction de la pensée que de la syntaxe VB.

Merci jmfmarques 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 121 internautes ce mois-ci

Commenter la réponse de jmfmarques
Arnal88 96 Messages postés samedi 21 octobre 2006Date d'inscription 25 avril 2009 Dernière intervention - 12 nov. 2006 à 20:00
0
Merci
Merci pour ta réponse.
Premièrement, je tiens absolument à mes shapes, car ils sont indépendants de l'affichage de la courbe. Je n'ai pas à les retracer constamment lorsque j'efface l'écran pour tracer une autre courbe...
Mais tu as totalement raison, c'est tiré par les cheveux que de faire un imprimer-écran et de conserver une partie de l'image.
Je vais donc tracer les axes directement dans la picturebox (avec l'instruction line) juste avant de copier dans le presse-papier.
Cela dit, j'aurais dû y penser avant...
Commenter la réponse de Arnal88

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.