Bonjour,
j'ai besoin d'un fonction rudimentaire pour afficher un texte à l'écranavec l'API Windows, mais avec une seule condition : qui affiche avec un background qu'on peut choisir.
J'ai essayé TextOut et DrawText, et il est bien spécifié dans la doc que le background utilisé est bien celui selectionné dans le DC, mais pourtant je sélectionne mon background, et mon text est otujours en noir et blanc!
Voilà mon code, et je pense que je fais une erreur, puisque ce que j'obtient n'est pas ce qui est décrit dans la doc, mais quoi? :
Une petite question au passage : il n'est pas marqué dans la doc de supprimer les handle HBRUSH après leur utilisation, mais sont-ils vraiment à ne pas supprimer, contrairement à tous les autres objets graphiques?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 case WM_CREATE: if ((MyBrush = CreateSolidBrush (RGB (0, 255, 0))) == NULL) { MessageBox (hwnd, "création", "erreur", MB_OK);} break; case WM_PAINT: hdc = BeginPaint (hwnd, &ps); if ((OldBrush = SelectObject (hdc, MyBrush)) == NULL) { MessageBox (hwnd, "sélection", "erreur", MB_OK);} TextOut (hdc, 100, 100, "essai", 5); SelectObject (hdc, OldBrush); EndPaint (hwnd, &ps); break;
Partager