Bonjour,
Je souhaiterais récupérer l'icone d'un fichier pour le quel j'ai son emplacement sur le disque. Comment dois-je m'y prendre pour récupérer l'handle sur l'icone ?
Merci d'avance
Bonjour,
Je souhaiterais récupérer l'icone d'un fichier pour le quel j'ai son emplacement sur le disque. Comment dois-je m'y prendre pour récupérer l'handle sur l'icone ?
Merci d'avance
Tu devrais pouvoir faire ça avec ExtractIcon(), ou encore avec LoadImage() et le flag LR_LOADFROMFILE...
Ok merci.
Et ce que ce code est bon ?
Si non, comment faire pour avoir l'HINSTANCE nécessaire puisque je programme avec wxWidget.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 WCHAR *path = (WCHAR*)m_path.c_str(); HICON hIcon = ExtractIcon(NULL, path, 0);
PS: m_path est par exemple égal à "M:\Programmation\Projets\[wxWidget] Bourse Extractor\exe\Bourse Extractor.exe"
Merci d'avance
Un cast explicite en WCHAR*, c'est pratiquement toujours mauvais.
Essaie plutôt ceci:
Si ça ne marche pas, essaye ExtractIconEx()... (ou plus précisément sa version char, ExtractIconExA()...
Code : Sélectionner tout - Visualiser dans une fenêtre à part HICON hIcon = ExtractIconA(GetModuleHandle(NULL), m_path.c_str(), 0);
Ok merci.
L'image ne s'affiche pas. Donc je voudrais savoir si c'est le code de l'api win ou celui de wxWidget.
Quand j'ai ça :
Comment je fais pour afficher l'image dans une fenetre ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part HICON hIcon = ExtractIconA(GetModuleHandle(NULL), m_path.c_str(), 0);
Merci d'avance
Ça, c'est de l'API Windows.
Ensuite, pour afficher l'icône dans une fenêtre ou une boîte de dialogue, tu peux soit la placer dans un contrôle static image, soit utiliser la fonction DrawState() avec les bons flags.
N'ayant plus utilisé l'api window depuis un certain temps.
Pourrais-tu m'envoyer le code necessaire pour afficher un boite de dialogue avec mon icone dedans.
Merci d'avance
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager