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

Windows Discussion :

[API Win32] Afficher un image autre que BMP


Sujet :

Windows

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Points : 407
    Points
    407
    Par défaut [API Win32] Afficher un image autre que BMP
    Bonsoir a tous,
    je cherche a afficher une image autre que bmp dans une e gui(notamment jpg, png...)
    Mais apparemment avec les contrôles static on ne peut pas, et avec la méthode des contexte de periph ca gere que le BMP.

    Si vous pouviez m'aider.

    Cordialement,
    NeoKript

  2. #2
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Ces formats de fichier ne sont pas nativement supportés par GDI, il te faut utiliser GDI+ pour ça, cf. l'aide de Bitmap(), Types of Bitmaps et Image File Format.

    Tu peux aussi utiliser CImage (MFC) ou IPicture (COM), ou alors n'importe quelle librairie générale permettant de charger ces formats de fichier et de les exporter dans un DIB.

    Bref, tu as pas mal de choix possibles, il ne te reste qu'à choisir celui qui convient le mieux à ton projet.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Points : 407
    Points
    407
    Par défaut
    Merci bien pour la réponse,
    Apres quelque recherche, j'ai fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	Gdiplus::Graphics graphics(this->_widget);
    	Gdiplus::Image image(Path.ToWChar_t());
    	graphics.DrawImage(&image, 0, 0, image.GetWidth(), image.GetHeight());
    J'ai prealablement fait apelle a :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	Gdiplus::GdiplusStartupInput gdiplusStartupInput;
    	ULONG_PTR  gdiplusToken;
    	GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
    cependant aucune image ne s'affiche !

    Merci d'avance

  4. #4
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Points : 4 846
    Points
    4 846
    Par défaut
    Tu es certain du chemin vers le fichier ? Tu as appelé GetLastStatus() afin de savoir si tout s'était bien passé ? Regarde cet exemple aussi.

    Sinon, je ne peux guère plus t'aider que ça : je n'utilise jamais ces classes directement, mais toujours au travers d'objets de bien plus haut niveau...
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Points : 407
    Points
    407
    Par défaut
    Salut,
    en fait j'ai trouver d'ou cela vient.
    Mon code fonctionne quand je le met dans la fonction callback de ma fenetre (dans WM_PAINT)
    ce pendant moi je ne veux pas la mettre ici. Je fait une lib et j'ai ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    void	GWidget::SetBackgroundImage(const GString &Path)
    {
    	PAINTSTRUCT paintst;
    	BeginPaint(this->_widget, &paintst);
    	Gdiplus::Graphics graphics(this->_widget);
    	Gdiplus::Image image(L"C:\\fond.jpg");
    	graphics.DrawImage(&image, 0, 0, image.GetWidth(), image.GetHeight());
    	EndPaint(this->_widget, &paintst);
    }
    Cependant rien ne s'affiche (tout les GetLastStatus sont OK)
    Si vous avez une idee, pour ne pas avoir besoin de le mettre dans la fonctione de callback.

    Merci d'avance.
    Cordialement,
    NeoKript

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

Discussions similaires

  1. Afficher des données (autre que graphiques) dans un subplot
    Par Heisenberg54 dans le forum MATLAB
    Réponses: 10
    Dernier message: 05/12/2014, 14h05
  2. Réponses: 2
    Dernier message: 11/06/2010, 15h51
  3. comment acceder a une image autre que GIF, JPEG et PNG
    Par Robert_aime_Java dans le forum Langage
    Réponses: 2
    Dernier message: 27/07/2006, 10h01
  4. [VB6] Image autre que .bmp
    Par Jivy77 dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 15/06/2006, 10h32
  5. [Tkinter] Afficher une image autre que gif
    Par mcdonald dans le forum Tkinter
    Réponses: 1
    Dernier message: 26/11/2005, 19h41

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