// Edit 컨트롤과 Control 형 멤버 변수 m_ctrlEdit 와 연결
// ControlColorDlg.h
class CControlColorDlg : public CDialog
{
// Construction
public:
CControlColorDlg(CWnd* pParent = NULL); // standard constructor
CBrush m_brush; // 브러시 인스턴스 선언
//...
}
// ControlColorDlg.cpp
// 컨트롤의 배경을 칠할 브러시 생성
CControlColorDlg::CControlColorDlg(CWnd* pParent /*=NULL*/)
: CDialog(CControlColorDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CControlColorDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
m_brush.CreateSolidBrush(RGB(255, 0, 0)); // 추가
}
// WM_CTLCOLOR 메시지 처리 구현
HBRUSH CControlColorDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if(m_ctrlEdit.m_hWnd == pWnd->m_hWnd)
{
pDC->SetTextColor(RGB(0, 0, 255));
pDC->SetBkColor(RGB(255, 255, 0));
return hbr;
}
if(nCtlColor == CTLCOLOR_STATIC)
{
pDC->SetTextColor(RGB(0, 255, 0));
pDC->SetBkColor(TRANSPARENT);
return m_brush;
}
// TODO: Return a different brush if the default is not desired
return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
}
'C & C++ > MFC 컨트롤' 카테고리의 다른 글
[상태바] 상태바 설정 (0) | 2011.05.21 |
---|---|
[Dialog] 다이얼로그에 Bmp 입히기 및 다이얼로그 색상 바꾸기 (0) | 2011.05.21 |
[Edit] 숫자 문자 유효성 검사 (0) | 2011.05.21 |
[List] Bitmap List (0) | 2011.05.21 |
[Button] Bitmap Button 02 (0) | 2011.05.21 |
댓글