cs_cadeau
Messages postés9Date d'inscriptionmardi 31 décembre 2002StatutMembreDernière intervention23 janvier 2009
-
20 oct. 2004 à 11:14
cs_cadeau
Messages postés9Date d'inscriptionmardi 31 décembre 2002StatutMembreDernière intervention23 janvier 2009
-
20 oct. 2004 à 17:07
Je veux mettre un static sur une texture de fond et tout ceci dans une boîte de dialogue. Quelque soit la méthode employée je n'arrive pas à rendre transparent ce static. Ci-dessous le source C++ et la ressource.
// Gestion des messages.
// ----------------------------------------------------------------------------
LRESULT CALLBACK DlgMainProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
//
// Traitement des messsages envoyés par la boite de dialogue IDD_DLGMAIN
// ----------------------------------------------------------------------------
// Les déclarations. ----------------------------------------------------------
static HBITMAP hbmp; // handle de l'image bitmap à afficher.
static HDC hdcCompat; // DC pour copier l'image.
HDC hdc; // device context (DC) pour window
PAINTSTRUCT ps; // Structure pour BeginPaint and EndPaint
switch (message) {
case WM_INITDIALOG : {
hbmp = LoadBitmap(hInst, MAKEINTRESOURCE(IDB_MOSAIC));
// Crée un device context (DC) pout l'image bitmap.
// L'image bitmap est copiée depuis ce DC vers le DC de la fenêtre.
hdc = GetDC(hDlg);
hdcCompat = CreateCompatibleDC(hdc);
SelectObject(hdcCompat, hbmp);
return TRUE ;
}
case WM_PAINT : {
BeginPaint(hDlg, &ps);
StretchBlt( ps.hdc, // HDC de destination.
0, // X-Coord. destination.
0, // Y-Coord. destination.
72, // Largeur de destination.
72, // Hauteur de destination.
hdcCompat, // Handle de la source.
0,
0,
72,
72,
SRCCOPY);
EndPaint(hDlg, &ps);
}
case WM_COMMAND : {
if (LOWORD(wParam) == IDOK) {
return TRUE ;
}
if (LOWORD(wParam) == IDCANCEL) {
EndDialog(hDlg, LOWORD(wParam));
return TRUE ;
}
break ;
}
default : {
return FALSE ;
}
}
return FALSE ;
}
La resource :
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
cs_cadeau
Messages postés9Date d'inscriptionmardi 31 décembre 2002StatutMembreDernière intervention23 janvier 2009 20 oct. 2004 à 12:19
Merci de ta réponse BruNews.
Mais ce que je veux faire, c'est afficher une texture de fond sur la boite de dialogue, pour cela j'utilise actuellement "StretchBlt".
De cette manière je n'arrive pas à rendred transparent un static texte.