J'aurais besoin de votre aide....
J'ai crée dans mes resources une boîte de dialog dans laquelle j'ai placé
une image qui prend toute la place de la boîte et un static text.
J'aimerais que le fond de mon texte static soit transparent de manière à ce
que je puisse continuer à voir l'image dessous et pas un fond gris.
Quelqu'un aurait-il une idée?
Ma boîte de dialogue est créee modeless de la manière suivante:
CDlgStatus *hDlg = new CDlgStatus(); // CDlgStatus dérive de la classe
CDialog
hDlg->Create(IDD_STATUS,NULL);
hDlg->SetWindowPos(&CWnd::wndTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
hDlg->SetDlgItemText(IDC_STATUS, "Text Static"); // IDC_STATUS est l'ID
du Static Text
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Dominique Baldo
Fred nous disait
Bonjour,
J'aurais besoin de votre aide.... J'ai crée dans mes resources une boîte de dialog dans laquelle j'ai placé une image qui prend toute la place de la boîte et un static text. J'aimerais que le fond de mon texte static soit transparent de manière à ce que je puisse continuer à voir l'image dessous et pas un fond gris. Quelqu'un aurait-il une idée? Ma boîte de dialogue est créee modeless de la manière suivante: CDlgStatus *hDlg = new CDlgStatus(); // CDlgStatus dérive de la classe CDialog hDlg->Create(IDD_STATUS,NULL); hDlg->SetWindowPos(&CWnd::wndTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); hDlg->SetDlgItemText(IDC_STATUS, "Text Static"); // IDC_STATUS est l'ID du Static Text
Je suis pas certain de répondre à la question mais ayant eu le même blème j'avais résolu ça comme ça: // A rajouter dans la boucle de traitement des messages: // Gestion de la couleur de fond des controles #define ORANGE 0x80C0F0
case WM_CTLCOLORSTATIC: { SetBkMode((HDC)wParam,TRANSPARENT); SetTextColor((HDC)wParam,ORANGE); return (int)Brush_du_fond; }
Fred nous disait
Bonjour,
J'aurais besoin de votre aide....
J'ai crée dans mes resources une boîte de dialog dans laquelle j'ai placé
une image qui prend toute la place de la boîte et un static text.
J'aimerais que le fond de mon texte static soit transparent de manière à ce
que je puisse continuer à voir l'image dessous et pas un fond gris.
Quelqu'un aurait-il une idée?
Ma boîte de dialogue est créee modeless de la manière suivante:
CDlgStatus *hDlg = new CDlgStatus(); // CDlgStatus dérive de la classe
CDialog
hDlg->Create(IDD_STATUS,NULL);
hDlg->SetWindowPos(&CWnd::wndTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
hDlg->SetDlgItemText(IDC_STATUS, "Text Static"); // IDC_STATUS est l'ID
du Static Text
Je suis pas certain de répondre à la question mais ayant eu le même
blème j'avais résolu ça comme ça:
// A rajouter dans la boucle de traitement des messages:
// Gestion de la couleur de fond des controles
#define ORANGE 0x80C0F0
case WM_CTLCOLORSTATIC:
{
SetBkMode((HDC)wParam,TRANSPARENT);
SetTextColor((HDC)wParam,ORANGE);
return (int)Brush_du_fond;
}
J'aurais besoin de votre aide.... J'ai crée dans mes resources une boîte de dialog dans laquelle j'ai placé une image qui prend toute la place de la boîte et un static text. J'aimerais que le fond de mon texte static soit transparent de manière à ce que je puisse continuer à voir l'image dessous et pas un fond gris. Quelqu'un aurait-il une idée? Ma boîte de dialogue est créee modeless de la manière suivante: CDlgStatus *hDlg = new CDlgStatus(); // CDlgStatus dérive de la classe CDialog hDlg->Create(IDD_STATUS,NULL); hDlg->SetWindowPos(&CWnd::wndTopMost, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); hDlg->SetDlgItemText(IDC_STATUS, "Text Static"); // IDC_STATUS est l'ID du Static Text
Je suis pas certain de répondre à la question mais ayant eu le même blème j'avais résolu ça comme ça: // A rajouter dans la boucle de traitement des messages: // Gestion de la couleur de fond des controles #define ORANGE 0x80C0F0
case WM_CTLCOLORSTATIC: { SetBkMode((HDC)wParam,TRANSPARENT); SetTextColor((HDC)wParam,ORANGE); return (int)Brush_du_fond; }
Christian ASTOR
Dominique Baldo wrote:
Je suis pas certain de répondre à la question mais ayant eu le même blème j'avais résolu ça comme ça:
case WM_CTLCOLORSTATIC: { SetBkMode((HDC)wParam,TRANSPARENT); SetTextColor((HDC)wParam,ORANGE); return (int)Brush_du_fond;
Oui, c'est ça. (on retourne en principe : (LRESULT)GetStockObject(HOLLOW_BRUSH) pour ne pas avoir à créer de brush )
Dominique Baldo wrote:
Je suis pas certain de répondre à la question mais ayant eu le même
blème j'avais résolu ça comme ça:
case WM_CTLCOLORSTATIC:
{
SetBkMode((HDC)wParam,TRANSPARENT);
SetTextColor((HDC)wParam,ORANGE);
return (int)Brush_du_fond;
Oui, c'est ça.
(on retourne en principe :
(LRESULT)GetStockObject(HOLLOW_BRUSH) pour ne pas avoir à créer de brush )