Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1481 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Affichage dans une picturebox [Visual C++]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Affichage dans une picturebox [Visual C++]

n°932517
binoo
Posté le 27-12-2004 à 14:58:35  profilanswer
 

Bonjour à tous,
 
J’ai deux picturebox dans ma fenêtre (c’est un document MDI – FormView) et j’affiche une image dans chacune. Ces picturebox représentent des aperçus et je souhaiterais afficher une image au choix dans une troisième picturebox directement par un clic sur la picturebox d’aperçu. Est-ce possible ? Moi je n’y arrive pas… Par un simple clic sur une picturebox, je ne parviens même pas à afficher un simple message (comme on peut faire avec un bouton).
 
Merci d'avance   :jap:  

mood
Publicité
Posté le 27-12-2004 à 14:58:35  profilanswer
 

n°932598
Rits75
to?be:!be
Posté le 27-12-2004 à 16:46:48  profilanswer
 

oui c'est possible via un LoadImage, lit bien la MSDN pour la charger à partir d'un fichier et pas d'une ressource!(si tu la charge à partir d'un fichier)!
ensuite tu recupere donc un HBITMAP que tu dessines via la methode DrawState!  
tu n'as pas besoin d'un picturebox! (juste pour la déco si tu veux, histoire d'avoir un cadre ;))

n°932724
binoo
Posté le 27-12-2004 à 21:15:53  profilanswer
 

Merci pour cette réponse,
 
Il faut savoir que je ne maîtrise pas vraiment tout sur Visual C++ (loin de là malheureusement)...
Je te montre donc comment je fais pour charger mon image :
 
 
 m_bmpCtrl.LoadFile("C: / .../   .bmp" );  
  // où m_bmpCtrl est une variable liée à ma picturebox
 
Avec la fonction LoadFile correspondante :
 
 void CBitmapCtrl::LoadFile(CString filename)
 {
  HBITMAP hBitmap = (HBITMAP) LoadImage(NULL, filename,  
                                  IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE |  
                                  LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
  SetBitmap(hBitmap);
 }

 
J'utilise donc la fonction que tu me conseille : LoadImage...
 
A ce niveau du message, je me demande si je me suis bien expliqué. Pour moi l'affichage d'une image dans une Picture, CA MARCHE. Mais le problème c'est le fait (je vais essayer d'être plus précis) par un clic sur une image que j'ai déjà affichée dans une des Picturebox, d'afficher cette dernière (pour moi en plus grand).
 
C'est ce que je ne parviens pas à faire.
 
Il faut savoir que ce n'est que le début du problème, car en fait dans les picturebox dites d'aperçu je n'aurais pas tout le temps la même image (choix de l'utilisateur par le biais d'un menu sous forme de boutons (ce qui chargera différents thèmes dans la zone d'aperçu)), il faudra donc que je puisse "capturer" l'image présente (ou son chemin par je ne sais quelle méthode).
 
Est-ce que tu avais compris mon problème, et si oui pourrais-tu m’en dire davantage et peut être répondre au second problème que j’ai évoqué.
 
Merci encore pour l’intérêt que tu portes à mon problème.

n°933001
Rits75
to?be:!be
Posté le 28-12-2004 à 12:36:47  profilanswer
 

pour le clik regarde du coté des evenments souris, si tu taff sous VC++, tu peux genérer des fontions par rapport a des evenemnts (clik sur bouton gauche, droit etc..) ces fonctions te file en param le point(x,y) ou tu as cliké!  
 
donc je pense qu'il te faut distinguer 2 evenments:
 - Le clik gauche enfoncé sur la souris correspondant  
   au msg "WM_LBUTTONDOWN" à ce moment tu charges  l'image  
   ds ta HBITMAP.
 
 -Le clik gauche relaché "WM_LBUTTONUP" à ce moment  
  recuperes donc ta hbitmap et tu l'affiche tt simplement!
 
pour generer les methodes d'evenements par visual studio dans ton "class view" fait un clik droit sur la classe qui contient ta picture box et tu selectionnes "add windows message handler" une fenetre s'ouvre avec tous les evenements que tu peux generer, tu choisis ce qui te conviennent!
voila si j'ai pu t'eclaircir encore un peu...
 

n°933308
binoo
Posté le 28-12-2004 à 22:52:54  profilanswer
 

Merci beaucoup,
 
j'ai maintenant de quoi avancer.  :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Affichage dans une picturebox [Visual C++]

 

Sujets relatifs
Problème affichage caractères spéciaux[C Ansi] Affichage dynamique en console
Affichage des liens[QT/Visual C++] Comment lier des images à son programme ?
[QT] affichage de fenêtre et problème de classe[RESOLU] Precision d'un float à l'affichage
Bug d'affichage sur image deffilanteBug d'affichage sur image déffilante
[C#/MHTML] affichage images dans mail 
Plus de sujets relatifs à : Affichage dans une picturebox [Visual C++]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR