2017-04-14 3 views

Répondre

0

solution peut être trouvée rapidement à la page de documentation SFML, here. sf :: RenderWindow :: méthode setIcon() peut donner la fenêtre d'application d'une icône, mais l'icône réelle doit être représentée par un pointeur sur un tableau de pixels. Cela peut être réalisé en créant un fichier d'en-tête .rc et un fichier .c contenant le tableau de pixels. Le tableau peut être créé à l'aide de la fonction de vidage d'image C-Source de GIMP.

Exemple:

Le fichier .rc:

//icon.rc 
IDR_APP_ICON ICON "icon.ico" 
GLUT_ICON ICON "icon.ico" 

Le fichier .c:

//icon.c 

/* GIMP RGBA C-Source image dump (icon.c) */ 

static const struct { 
    unsigned int width; 
    unsigned int height; 
    unsigned int bytes_per_pixel; /* 2:RGB16, 3:RGB, 4:RGBA */ 
    unsigned char pixel_data[32 * 32 * 4 + 1]; 
} gimp_image = { 
    32, 32, 4, 
    "k\177h\377k\177h\377\377\377\377\0\377\377\377\0\377\377\377\0\204`\236\201"` 

//The array pixel array would continue here until }; closing the struct. 

L'objet struct généré peut être ensuite passée comme argument pour le setIcon() méthode.

sf::RenderWindow::setIcon(gimp_image.width, gimp_image.height, gimp_image.pixel_data); 

Et fichier icon.c devrait être inclus dans votre fichier main.cpp ou partout où il est de régler l'icône à RenderWindow.