Gtk - Impossible de charger les images

Fermé
bonzime Messages postés 39 Date d'inscription jeudi 14 août 2008 Statut Membre Dernière intervention 12 juin 2010 - 3 janv. 2009 à 11:32
bonzime Messages postés 39 Date d'inscription jeudi 14 août 2008 Statut Membre Dernière intervention 12 juin 2010 - 25 janv. 2009 à 15:58
Bonjour,
Je suis apprenti programmeur en C et je suis présentement en apprentissage de GTK.
Cependant, je me suis cogné à un hic. Impossible de charger des images pour les afficher dans une fenêtre.
J'ai d'abord utilisé la fonction gtk_image_new_from_file mais l'image avec la croix rouge aparaît.
J'ai ensuite utilisé un pixbuf pour gérer les erreurs et je me rend compte compte gtk ne reconnaît pas les formats. J'ai essaiyé avec plusieurs images, toujours le même résultat. Quelqu'un peut-il m'aider s'il vous plaît ?

void ferme()
{
//Déclaration des variables
GtkWidget * pWindow;
GtkWidget * pBox;
GtkWidget * pImage;
GdkPixbuf * ppix;
GError * pError;
//Création de la fenêtre

pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_position(GTK_WINDOW(pWindow), GTK_WIN_POS_CENTER);
gtk_window_set_default_size(GTK_WINDOW(pWindow), 640, 480);

gtk_window_set_title (GTK_WINDOW(pWindow), "Test image");

//Création de la box
pBox=gtk_vbox_new(TRUE, 6);

GtkWidget * pLabel;
pLabel=gtk_label_new("Image");


//Creation de l'image à paritr d'un Pixbuf
ppix = gdk_pixbuf_new_from_file("alphatest.png", &pError);
if (pError != NULL)
{
gtk_label_set_label(GTK_LABEL(pLabel), pError->message);
}


pImage=gtk_image_new_from_pixbuf(ppix);

//Ajout des éléments à la fenêtre
gtk_box_pack_start(GTK_BOX(pBox), pLabel, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(pBox), pImage, FALSE, FALSE, 0);
gtk_container_add(GTK_CONTAINER(pWindow), pBox);

//Connexion des signaux
g_signal_connect(G_OBJECT(pWindow), "destroy", G_CALLBACK(gtk_main_quit), NULL);



//Affichage de la fenêtre et de son contenu
gtk_widget_show_all(pWindow);

//Boucle évènementielle
gtk_main();

}

1 réponse

bonzime Messages postés 39 Date d'inscription jeudi 14 août 2008 Statut Membre Dernière intervention 12 juin 2010 5
25 janv. 2009 à 15:58
Boujour tout le monde ! :p

J'ai trouvé la solution à mon problème. C'était juste un problème de mauvaise installation. o_O
J'avais essayé de l'installer manuellement, mais je crois qu'il a du avoir des failles dans ma méthodes. Pour ceux qui ont le même problème que moi, voici comment comment j'ai procédé:
-Désinstaller Dev Cpp
-Supprimer tout le répertoire d'installation de DevCpp. Si vous avez les fichiers de vos projets ou des fichiers que vous supposez important, copier les dans un autre répertoire avant de supprimer
-Réinstaller DevCpp
-Télécharger le package Gtk pour DevCpp ainsi que le runtime sur http://gtk.alkia.org/index.php
-Installer le runtime et le package de Gtk
-Et c'est fini ! Pas besoin de longues configuration! Pour créer un projet Gtk, créer un nouveau Projet. Il y a un nouvel onglet, GUI. Sélectionnez le et choisissez Gtk. Et voilà !

Merci à tout le monde !
0