Bouton fond transparent en utilisant Win32 et Styles visuels
-
21-08-2019 - |
Question
Modifier: Si quelqu'un a essayé cela dans win32 avant, que je vais dans la bonne direction en utilisant DrawThemeBackground ()
I'v récemment activé Styles visuels à l'aide d'un manifeste pour la version 6 de ComCtl32.dll. Exemple de styles visuels dans Win32: Styles visuels
Les boutons sont superbes, mais je ne peux pas comprendre comment faire l'arrière-plan autour des boutons transparents. S'il vous plaît voir l'exemple d'image: http://www.freeimagehosting.net/image.php?2bdeff33ba .jpg
Ma principale couleur de fond de la fenêtre est réglée sur gris foncé avec:
a.hbrBackground = GetStockObject(DKGRAY_BRUSH);
Les contrôles communs sont initialisés avec:
INITCOMMONCONTROLSEX stylesStruct;
stylesStruct.dwSize = sizeof(stylesStruct);
stylesStruct.dwICC = ICC_STANDARD_CLASSES;
InitCommonControlsEx(&stylesStruct);
Et je crée les fenêtres bouton avec:
j = CreateWindow(L"BUTTON", L"hello",
WS_VISIBLE | WS_CHILD | BS_DEFPUSHBUTTON, 100, 100,
100, 100, h, 0, hInst, 0);
Boutons ont l'air bien sur un fond blanc, mais la frontière devient visible sur toute autre chose. Est-il possible de faire de la frontière autour des boutons transparents?
La solution
Avez-vous essayé WS_EX_TRANSPARENT
?
Je pense que vous pouvez le configurer dans l'éditeur de ressources dans Visual Studio, si vous utilisez cela.