J'essaye de charger un bitmap dans un contrôle CStatic
. Dans mon dialogue, j'ai un contrôle CStatic auquel je fais référence par _myStatic
. Dans ma méthode OnInitDialog
pour la boîte de dialogue je suis en train de brancher le contrôle à cette variable et je modifie le style à SS_BITMAP
par _myStatic.ModifyStyle(0,SS_BITMAP);
. La ligne après que j'ai _myStatic.SetBitmap(::LoadBitmap(NULL, MAKEINTRESOURCE(IDB_BITMAP1)));
, mais le bitmap n'apparaît pas dans le CStatic. Ai-je manqué une étape dans le processus? Le bitmap est défini dans mes ressources.Chargement d'un bitmap dans un contrôle CStatic?
1
A
Répondre
1
Vous devez fournir un premier argument non NULL à l'appel LoadBitmap
. En passant l'appel, assurez-vous que l'argument SetBitmap est également non-NULL.
_myStatic.SetBitmap(::LoadBitmap(
_AtlBaseModule.GetResourceInstance(), MAKEINTRESOURCE(IDB_BITMAP1)));
Avez-vous appelé 'UpdateWindow()'? Certaines propriétés d'une fenêtre sont mises en cache et leur modification peut nécessiter l'appel de 'UpdateWindows()' pour mettre à jour les valeurs mises en cache. –
Avez-vous vérifié que 'LoadBitmap()' ne retourne pas un handle NULL? Avez-vous le même problème avec 'LoadImage()'? Vous devriez quand même l'utiliser, car 'LoadBitmap()' est obsolète. –