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

MFC Discussion :

[mfc][gdi] un tuto ?


Sujet :

MFC

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut [résolu][mfc][gdi] un tuto ?
    Salut,

    J'ai qlq problm avec la gestion de l'affichage...
    Lorsque la Dlg est redessinée ma jpg disparait
    Je recherche donc un bon tuto ?
    Merci d'avance pour l'aide

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    bonjour ,
    je connais pas de tuto en ligne,
    mais bon le dessin de ta jpeg il se fait dans quel controle ?
    lorque la fenetre est redessinée un message paint est envoye reste à savoir comment est implemente l'affichage de l'image en reponse à un message paint ou une fonction externe ?


  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    merci pour t'etre penché sur mon cas.

    j'utilise une lib,
    CVOImage image;
    image->draw(HDC,..., path de la jpg,...); // ma jpg est dessinée à ce moment, HDC hdle vers le DC d'un GroupBox.
    le code dans le OnInit n'affiche rien
    le code dans un event (ex : btnclick) affiche la jpg mais si je lance une autre appli (sur Pocket PC) la jpg s'efface.

    PS : eVC++

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    en gros ça veut dire que tu a utiliser l'emplacement du groupbox pour afficher ton image ?
    si c'est le cas :
    je ferais la chose suivante je creer une classe derivee de CButton tu genere la fonction ondrawitem:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    MonButton::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct) 
    {
    ASSERT(lpDrawItemStruct != NULL);
     
    //CDC* pDC = CDC::FromHandle(lpDrawItemStruct->hDC);
    UINT nState = lpDrawItemStruct->itemState;
    CRect itemRect = lpDrawItemStruct->rcItem;
    mage->draw(lpDrawItemStruct->hDC,..., path de la jpg,...);
    }
    dans ta dialogue tu declares une variable de type control associe au groupbox et tu remplace CButton par ta classe .
    lors du paint du bouton ton image devrait se repeindre.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    bon, j'ai essayé le code mais il n'a pas fctionné par contre ca m'a donné
    une idée qui fut la bonne 8)
    merci bcq pour ton aide farscape

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    c'est quoi qui marchait pas ?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    ca compilait mais rien ne s'affichait...

  8. #8
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut en fait ,j'ai deja fait mais avec un boutton dont il faut fixer le style à owner draw dans les ressources ou rajouter dans la classe derivee:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    BOOL MyButton::PreCreateWindow(CREATESTRUCT& cs) 
    {
    	// TODO: Add your specialized code here and/or call the base class
    	cs.style |= BS_OWNERDRAW;
    	return CButton::PreCreateWindow(cs);
    }
    la ca fonctionne la fonction drawitem est appelee.


  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 119
    Points : 100
    Points
    100
    Par défaut
    ok, je vois où tu veux en venir...
    j'vais rester avec ma soluce pour le moment comme ca marche
    mais je garde tes infos precieusement
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 10/08/2008, 18h27
  2. est-ce WIN32<GDI<MFC ?
    Par trois_1 dans le forum MFC
    Réponses: 4
    Dernier message: 03/07/2008, 20h48
  3. [MFC - GDI] Redimensionnement Image
    Par Ben A. dans le forum MFC
    Réponses: 3
    Dernier message: 02/02/2006, 11h54
  4. [MFC] libération des objets GDI's
    Par Kevgeii dans le forum MFC
    Réponses: 5
    Dernier message: 01/02/2004, 10h37

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