티스토리 뷰
MFC 공통 대화상자
일반적인 응용프로그램에서 자주 사용하는 대화상자를 OS에서 제공하는 것.
MFC클래스 |
용도 |
API함수 |
CColorDialog |
색상 선택 |
ChooseColor() |
CFileDialog |
파일 열기 또는 저장 |
GetOpenFileName(), |
CFindReplaceDialog |
찾기 또는 바꾸기 |
FindText(), ReplaceText() |
CFontDialog |
폰트 선택 |
ChooseFont() |
CPageSetupDialog |
페이지 설정(페이지 크기, 방향, 여백 등) |
PageSetupDlg() |
CPrintDialog |
인쇄 설정 (프린터, 인쇄 범위 등) |
PrintDlg() |
CPrintDialogEx (MFC7.0이상) |
인쇄 설정 (프린터, 인쇄 범위 등) |
PrintDlgEx() |
1
2
3 |
CColorDialog dlg;
dlg.DoModal();
COLORREF color = dlg.GetColor(); |
cs |
1
2
3 |
CColorDialog dlg(RGB(255, 0, 0), CC_FULLOPEN);
dlg.DoModal();
COLORREF color = dlg.GetColor(); |
cs |
1
2
3
4
5
6
7 |
CFileDialog dlg(TRUE); // 파일열기
if (dlg.DoModal() == IDOK)
MessageBox(dlg.GetPathName());
CFileDialog dlg2(FALSE); // 파일저장
if (dlg2.DoModal() == IDOK)
MessageBox(dlg2.GetPathName()); |
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 |
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
CClientDC dc(this);
CRect rect;
GetClientRect(&rect);
dc.SelectStockObject(WHITE_PEN);
dc.SelectStockObject(WHITE_BRUSH);
dc.Rectangle(&rect);
COLORREF color = dlg.GetColor();
dc.SetTextColor(color);
LOGFONT lf;
dlg.GetCurrentFont(&lf);
CFont font;
font.CreatePointFontIndirect(&lf);
dc.SelectObject(&font);
dc.TextOutW(10, 10, CString(L"한글 & English"));
} |
cs |
1
2 |
CPageSetupDialog dlg;
dlg.DoModal(); |
cs |
1
2
3
4
5 |
CPrintDialog dlg(TRUE); // 인쇄설정
dlg.DoModal();
CPrintDialog dlg2(FALSE);
dlg2.DoModal(); |
cs |
1
2 |
CPrintDialogEx dlg;
dlg.DoModal(); |
cs |