IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

Bitmap qui disparaît


Sujet :

Visual C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 31
    Par défaut Bitmap qui disparaît
    bonjour à tous,

    je n'arrête pas de poster, mais cela m'aide beaucoup je vous remercie pour votre aide

    dans mon application win32 je charge une simple bitmap en fond de mon appli, je me suis fait cette petite fonction qui marche bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    void PrintBmp(HWND hWnd, int pBitmap)
    {
     
      HBITMAP hBmp;
      HDC hDC;
      hBmp=(HBITMAP)LoadImage(hInst,MAKEINTRESOURCE(pBitmap),IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION);
      hDC=GetDC(hWnd);
      DrawState(hDC,NULL,NULL,(LPARAM)hBmp,NULL,0,0,0,0,DST_BITMAP);
      DeleteObject(hBmp);
      ReleaseDC(hWnd,hDC);
     
    }
    qui me charge une image ressource, j'affiche alors mon image comme cela après l'appel du createWindowEx :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PrintBmp (hWnd, IDB_BITMAP1);
    seulement voilà, lorsque je redimensionne mon appli, qu'un menu qui s'est superposé à mon bitmap est déplaçé, mon bitmap est effaçé, je pense qu"il faut que je force le refresh du bitmap ou quelquechose,

    merci à vous

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Le contenu d'une fenêtre doit être dessiné dans le traitement du message WM_PAINT, avec le HDC obtenu en retour de BeginPaint().

    PS: Tu n'utilises pas les MFC, ce message ne devrais pas être dans ce sous-forum.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti
    Inscrit en
    Février 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 31
    Par défaut
    ah desolé je ne savais pas, je ne ferai plus l'erreur

    puis je savoir du coup comment redesinner le contenu de la fenêtre avec le HDC ?

    merci

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Comme je l'ai dis: tu fais l'affichage dans le WM_PAINT, et tu passes le HDC en paramètre à ta fonction.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre averti
    Inscrit en
    Février 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 31
    Par défaut
    super, ça fonctionne merci pour ton aide

Discussions similaires

  1. Réponses: 1
    Dernier message: 30/11/2007, 18h59
  2. Zone de texte qui disparaît
    Par david5 dans le forum Word
    Réponses: 1
    Dernier message: 05/10/2007, 12h48
  3. Fond qui disparaît - Bug IE ?
    Par *|~ XiKuXan ~|* dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 22/12/2005, 09h25
  4. Réponses: 5
    Dernier message: 28/04/2005, 09h50
  5. [Timer+Bitmap]Bitmap qui bouge?
    Par thief dans le forum MFC
    Réponses: 6
    Dernier message: 01/09/2004, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo