[MFC] 윈도우 프로그래밍 기초 - 색상 대화상자 - 실습 1
앞서 소개한 색상 대화상자를 우리가 직접 호출해보겠습니다.
먼저 클래스 생성자에 대해 소개하겠습니다.
1. CColorDialog 생성자
CColorDialog ( COLORREF clrInit = 0, DWORD dwFlags = 0, CWnd* pParentWnd = NULL ) |
생성자에는 3개의 Parameter를 사용할 수 있습니다.
Default Value가 이미 존재하므로 특별히 따로 지정하지 않아도 사용할 수는 있습니다.
CColorDialog는 아래와 같이 4가지 유형으로 사용할 수 있습니다.
CColorDialog dlg; |
CColorDialog dlg(RGB(255, 0, 0)); |
CColorDialog dlg(RGB(255, 0, 0), CC_FULLOPEN); |
CColorDialog dlg(RGB(255, 0, 0), CC_FULLOPEN, this); |
첫 번째, COLORREF clrInit는 기본 색상을 지정하기 위해 사용됩니다.
RGB형을 사용하면 됩니다.
COLORREF는 참고로 별도로 지정하지 않으면, RGB(0, 0, 0)을 기본으로 지정합니다.
두 번째, DWORD dwFlags입니다.
5가지 유형으로 사용할 수 있습니다.
사용 유형 |
설명 또는 동작 |
CC_ANYCOLOR |
|
CC_FULLOPEN |
|
CC_PREVENTFULL |
사용자 지정 색 만들기가 비활성화 됩니다.
|
CC_RGBINIT |
clrInit으로 지정한 색상을 기본으로 선택하기 위한 플래그 |
CC_SOLIDCOLOR |
기본 색상 대화상자를 선택하기 위한 플래그 |
2. 대화상자를 화면에 출력하기
CColorDialog dlg(RGB(0, 0, 0) ); dlg.DoMoal( ) ; |
3. 선택된 색상 - 반환
GetColor( ) 맴버 함수
-> CColorDialog 클래스는 GetColor ( ) 맴버함수를 포함하고 있음
원형 구조
COLOREF GetColor( ) const; |
우리가 만들 프로그램은 아주 기본적인 프로그램입니다.
1. 색상 대화상자 객체 생성 |
2. 생성된 색상 대화상자 출력 (DoModal) |
3. 선택된 COLORREF 값 획득 |
4. 획득된 COLORREF 값을 사용하여 처리 |
결과
이벤트 처리기랑 이런 부분은 생략하겠습니다.
다 이해하셨다는 전제 하에 진행하겠습니다.
이해 안되셨으면 다시 돌아가서 이전 글을 확인하시고 오세요.
void CColorDlgExDlg::OnBnClickedButton1()
{
CColorDialog colorDlg;
if (colorDlg.DoModal() == IDOK)
{
COLORREF color = colorDlg.GetColor();
CString strTmp;
strTmp.Format(_T("RGB 출력: (%u, %u, %u) "), GetRValue(color), GetGValue(color), GetBValue(color));
AfxMessageBox(strTmp);
}
}
'소프트웨어(SW) > MS - C++ (GUI) MFC' 카테고리의 다른 글
[MFC] 윈도우 프로그래밍 기초 - 파일 대화 상자(CFileDialog) (1) | 2015.03.24 |
---|---|
[MFC] 윈도우 프로그래밍 기초 - 색상 대화상자 - 실습 2 (1) | 2015.03.24 |
[MFC] 윈도우 프로그래밍 기초 - 공통 대화 상자란? (1) | 2015.03.24 |
[MFC] 윈도우 프로그래밍 기초 - 스크롤바(Scroll Bar) 제어 (2) | 2015.03.22 |
[MFC] 윈도우 프로그래밍 기초 - 리스트박스 컨트롤(Listbox Control) (2) | 2015.03.22 |