georgeduke
Messages postés167Date d'inscriptiondimanche 6 février 2005StatutMembreDernière intervention13 avril 2007
-
17 août 2005 à 11:14
whikie
Messages postés99Date d'inscriptionvendredi 24 juin 2005StatutMembreDernière intervention17 septembre 2005
-
18 août 2005 à 08:55
Bonjour !!
J'ai développé un petit programme avec devC++/wxWidgets qui affiche un
fichier bmp pour embellir l'interface. J'aimerais savoir comment
procéder pour mettre ce bmp externe dans l'exe, et permettre à
wxWidgets de continuer à l'afficher.
Voilà comment j'affiche le bmp actuellement :
private:
[...]
wxBitmap *fondbmp;
wxImage *monimage;
[...]
monimage = new wxImage("ha3.bmp",wxBITMAP_TYPE_BMP,-1);
Ca serait vraiment pratique pour moi de n'avoir que
l'exe à diffuser... donc si vous savez comment faire pour integrer
cette image dans les ressources du projet ; je serais vraiment heureux
!! :-)
fredcl
Messages postés547Date d'inscriptionmercredi 8 janvier 2003StatutMembreDernière intervention 7 octobre 20071 17 août 2005 à 13:39
Bonjour,
pour lire un bitmap depuis une ressource il faut utiliser un wxBitmap
Voici ce que dit l'aide de wxWidget :
// an easy and portable way to create a bitmap
wxBitmap bmp(wxBITMAP(bmpname));
// which is roughly equivalent to the following
#if defined(__WXMSW__) || defined(__WXPM__)
wxBitmap bmp("bmpname", wxBITMAP_TYPE_RESOURCE);
#else // Unix
wxBitmap bmp(bmpname_xpm, wxBITMAP_TYPE_XPM);
#endif
Pour inclure ton image dans un fichier ressource pour qu'il soit linker à ton exe cherche sur ce site j'ai déjà vu un truc du genre ici.
Sinon autre possibilité tu transforme ton image bitmap en XPM tu inclus le fichier XPM a ton source avec un simple #include puis tu utilises le constructeur de wxBitmap suivant : wxBitmap(const char** bits)
Bien sur cette solution n'est valable que pour une image ayant un nombre de couleur assez réduit pour une photo ça marchera pas ou mal.
Pour l'utilisation et la transformation d'image va voir XPM Convert : soit ici soit sur mon site http://cfred.free.fr