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

SDL Discussion :

fonction pour chager des images


Sujet :

SDL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2009
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 48
    Par défaut fonction pour chager des images
    Bonjour a tous

    Je suis débutant en programmation, et j'essaye de me faire un petit catalogue de fonction pour que je puisse les réutiliser par la suite, j'en ai déjà faite quelques unes, mais la je bloque sur une fonction pour charger des images. En fait je souhaiterais pouvoir charger des images a partir d'une fonction, dans des SDL_Surface crée dans la fonction main.

    J'avais pensé a un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    void chargementImage (SDL_Surface *image, char nomDeLImage[])
     
    {
         image = IMG_Load(nomDeLImage);
    }
    Mais ca ne passe pas.

    En fait le but de cette fonction sera, par exemple associé a la lecture d'un fichier contenant toutes les images a charger, faire une boucle avec cette fonction, plutot que d'avoir 50 lignes dans la fonction principale.

    merci d'avance.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 30
    Par défaut
    Salut, tu trouveras une reponse ici : http://loka.developpez.com/tutoriel/sdl/premiere_app/

    Cordialement.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2007
    Messages : 106
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SDL_Surface * img = NULL;
    bool chargementImage(){
       img = load_image( "image que tu veut charger" );       
       if(img == NULL ){
          MessageBox(NULL,"Erreur au chargement de l'image",NULL,MB_OK);  
          return false;       
          }
       return true;
    }

  4. #4
    Membre Expert
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Par défaut
    C'est un problème classique avec les pointeurs.

    Ce que tu changes est le contenu de la variable copiée et passée en paramètre à la fonction, mais rien en dehors de la fonction.

    Si tu es en C, tu peux faire comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void chargementImage (SDL_Surface **image, char nomDeLImage[])
     
    {
         *image = IMG_Load(nomDeLImage);
    }
    En passant en paramètre l'adresse du SDL_Surface*.

    Si tu es en C++:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void chargementImage (SDL_Surface *&image, char nomDeLImage[])
     
    {
         image = IMG_Load(nomDeLImage);
    }
    Et tu l'utilises comme avant!

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/08/2009, 14h29
  2. Fonction (ou macro) pour incorporer des images dans Excel
    Par metis dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/05/2007, 13h34
  3. fonction pour charger des iframes
    Par rib dans le forum Langage
    Réponses: 2
    Dernier message: 03/12/2005, 14h27
  4. Réponses: 6
    Dernier message: 22/11/2005, 17h08
  5. Réponses: 12
    Dernier message: 22/02/2005, 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