Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ré-ecrire un texte automatiquement

1 réponse
Avatar
GuillaumeS
Bonjour,

Comment faire en sorte d'afficher un texte dans une fen=EAtre et de
pouvoir ensuite faire en sorte de le modifier lorsqu'on le souhaite
par une fonction ? En fait R=E9-ecrire un autre texte =E0 la place.


Voici mon code actuel pour la partie WM_PAINT


case WM_PAINT:
{
HBITMAP hBmp;
HDC hdc;
PAINTSTRUCT ps;
hBmp=3DLoadBitmap(hinst,"MyPicture");
hdc =3D BeginPaint(hwnd, &ps);

SetBkMode(hdc, TRANSPARENT);


TextOut(hdc, 10, 515, message1, lstrlen
(message1));
TextOut(hdc, 420, 485, message2, lstrlen
(message2));

EndPaint(hwnd, &ps);
DeleteObject(hBmp);
return 0;
}



J'utilise 2 variable globale message1 et message2 comme cha=EEne de
caractere, que je modifie dans une autre fonction quand je le
souhaite.
Le message s'affiche bien mais seulement lorsque je r=E9duit ma fenetre
dans la barre des t=E2ches puis que je la maximise =E0 nouveau. Le
rafraichissement ne se fait pas tout seul.

Que puis-je faire??

Merci

1 réponse

Avatar
Sylvain SF
GuillaumeS a écrit :

Comment faire en sorte d'afficher un texte dans une fenêtre et de
pouvoir ensuite faire en sorte de le modifier lorsqu'on le souhaite
par une fonction ? En fait Ré-ecrire un autre texte à la place.

Que puis-je faire??



faite un InvalidateRect(hWnd, NULL, TRUE); après avoir modifié
vos globales messagei, cela provoquera l'auto-envoi d'un WM_PAINT
qui redessinera avec les bons messages.

SF.