BeginPath et TextOut

cs_Xentor609 Messages postés 258 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 16 août 2004 - 16 oct. 2003 à 11:58
cs_Xentor609 Messages postés 258 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 16 août 2004 - 17 oct. 2003 à 08:56
salut,
Voilà un morceau du code:
case WM_PAINT:
{
PAINTSTRUCT ps;
HDC hdc=BeginPaint(hwnd,&ps);
SetBkMode(hdc,TRANSPARENT);
BeginPath(hdc);
TextOut(hdc, 0, 0,"Test sur TextOut", 16);
EndPath(hdc);
int nbPath=GetPath(hdc,0,0,0);
EndPaint(hwnd,&ps);
break;
}
Le problème est que nbPath 0, alors que si je remplace TextOut par Rectangle(hdc,5,5,100,150), nbPath 4.
Est-ce que BeginPath fonctionne avec TextOut ?
Si oui, comment faire?
D'avance, merci pour votre aide
Bye,Xentor609

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
16 oct. 2003 à 12:30
oui si tu fais un SelectClipRgn() sur ton hdc ou autre operation de ce genre.
Regarde BeginPath dans msdn, tu as un exemple complet.
BruNews, ciao...
0
cs_Xentor609 Messages postés 258 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 16 août 2004
17 oct. 2003 à 08:56
salut,
Mon but est de faire un OSD (On Screen Display).
Au départ, j'ai essayé avec une fenêtre invisible (c'était le projet noel1999 que tu m'avais envoyé) mais ca ne marchait pas comme je le souhaitais.
Ensuite je suis tombé par harsard sur des exemples qui utilisaient les régions. En fouillant un peu dans MSDN, je pensais que le code allait ressembler à çà:
BeginPath(hdc); 
TextOut(hdc, 0, 0, "OSD", 3); 
EndPath(hdc); 
HRGN hRegion=PathToRegion(hdc);
SetWindowRgn(hwnd, hRegion, 1);

Oui, mais le problème est que hRegion est null.
Bye,Xentor609
0
Rejoignez-nous