Je cherche à créer un bouton de forme non standard.
Je définis une région elliptique sur un bouton dessiné en ressource.
Voici le code utilisé pour créer la région:
HRGN hRgn, oldRgn = NULL;
RECT Rect;
hButton = GetDlgItem(hwnd, IDC_BUTTON);
GetWindowRect(hButton, &Rect);
Rect.right -= Rect.left;
Rect.left = 0;
Rect.bottom -= Rect.top;
Rect.top = 0;
hRgn = CreateEllipticRgnIndirect(&Rect);
GetWindowRgn(hButton, oldRgn);
CombineRgn(hRgn, hRgn, oldRgn, RGN_AND);
if (hRgn != NULL)
SetWindowRgn(hButton, hRgn, TRUE);
ShowWindow(hwnd, SW_SHOW);
UpdateWindow(hwnd);
DeleteObject(hRgn);
DeleteObject(oldRgn);
Avec ce code, ma région est bien créée puisque je ne peux cliquer que sur une partie du bouton, la partie définie par l'ellipse créée, mais tout mon bouton reste visible
J'ai donc créé un bouton rectangulaire (super, je savais pas le faire autrement

, lol) sur lequel on ne peut cliquer que sur la partie elliptique.
Ce que je cherchais à faire, c'étatit un bouton elliptique!!!
Si vous avez des idées, parcque je dois dire que je suis à court.
Les fois ou j'ai utilisé des régions, c'était sur la fenetre mere, pas sur un composant, est ce que cela peut changer quelquechose?
Vive le C
Tchao
Savon