Contrôle transparent ?

nicolos Messages postés 11 Date d'inscription mardi 27 janvier 2004 Statut Membre Dernière intervention 7 décembre 2004 - 3 déc. 2004 à 08:11
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 - 3 déc. 2004 à 11:21
Salut,

Je voudrais créer un contrôle avec un fond transparent. Or, tous mes contôles ont un fond gris qui se dessine avant que je puisse dessiner moi même mon contrôle. Et je ne voudrais pas que ce fond gris apparaise, alors comment faire afin que mon contrôle puisse apparaître en transparence ?

J'utilise pour cela Borland C++ Builder 6, mais s'il y a une solution(fiable) avec les API win32 ou avec Visual C++ 6 (MFC), j'accepte.

J'ai absolument besoin d'un contrôle dont le fond soit transparent.

Merci

2 réponses

cs_Arnotic Messages postés 933 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 9 janvier 2012
3 déc. 2004 à 08:40
Salut,

Par exemple pour le controle static, dans ta WndProc :

case WM_CTLCOLORSTATIC:
if(GetWindowLong((HWND)lParam, GWL_ID) == ID_CONTROL) {
SetBkMode((HDC) wParam, TRANSPARENT);
return (BOOL) GetStockObject(NULL_BRUSH);
}

@+
Arnotic,
Admin CS, MVP Visual C++
0
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
3 déc. 2004 à 11:21
salut,
Regarde ce code source, tu y trouveras tout ce que tu veux j'espère:
COULEURS ET TRANSPARENCE DES CONTROLES (API)
0
Rejoignez-nous