source: chevmsgr/trunk/msvc14/ChevMsgrClient_MFC/ChevMsgrClient_MFCDlg.cpp@ 4

Last change on this file since 4 was 4, checked in by cheese, 9 years ago

자 이제 시작이야 (졸작을)

File size: 3.5 KB
Line 
1
2// ChevMsgrClient_MFCDlg.cpp : ±¸Çö ÆÄÀÏ
3//
4
5#include "stdafx.h"
6#include "ChevMsgrClient_MFC.h"
7#include "ChevMsgrClient_MFCDlg.h"
8#include "afxdialogex.h"
9
10#ifdef _DEBUG
11#define new DEBUG_NEW
12#endif
13
14
15// ÀÀ¿ë ÇÁ·Î±×·¥ Á¤º¸¿¡ »ç¿ëµÇ´Â CAboutDlg ´ëÈ­ »óÀÚÀÔ´Ï´Ù.
16
17class CAboutDlg : public CDialogEx
18{
19public:
20 CAboutDlg();
21
22// ´ëÈ­ »óÀÚ µ¥ÀÌÅÍÀÔ´Ï´Ù.
23#ifdef AFX_DESIGN_TIME
24 enum { IDD = IDD_ABOUTBOX };
25#endif
26
27 protected:
28 virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV Áö¿øÀÔ´Ï´Ù.
29
30// ±¸ÇöÀÔ´Ï´Ù.
31protected:
32 DECLARE_MESSAGE_MAP()
33};
34
35CAboutDlg::CAboutDlg() : CDialogEx(IDD_ABOUTBOX)
36{
37}
38
39void CAboutDlg::DoDataExchange(CDataExchange* pDX)
40{
41 CDialogEx::DoDataExchange(pDX);
42}
43
44BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
45END_MESSAGE_MAP()
46
47
48// CChevMsgrClient_MFCDlg ´ëÈ­ »óÀÚ
49
50
51
52CChevMsgrClient_MFCDlg::CChevMsgrClient_MFCDlg(CWnd* pParent /*=NULL*/)
53 : CDialogEx(IDD_CHEVMSGRCLIENT_MFC_DIALOG, pParent)
54{
55 m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
56}
57
58void CChevMsgrClient_MFCDlg::DoDataExchange(CDataExchange* pDX)
59{
60 CDialogEx::DoDataExchange(pDX);
61}
62
63BEGIN_MESSAGE_MAP(CChevMsgrClient_MFCDlg, CDialogEx)
64 ON_WM_SYSCOMMAND()
65 ON_WM_PAINT()
66 ON_WM_QUERYDRAGICON()
67END_MESSAGE_MAP()
68
69
70// CChevMsgrClient_MFCDlg ¸Þ½ÃÁö 󸮱â
71
72BOOL CChevMsgrClient_MFCDlg::OnInitDialog()
73{
74 CDialogEx::OnInitDialog();
75
76 // ½Ã½ºÅÛ ¸Þ´º¿¡ "Á¤º¸..." ¸Þ´º Ç׸ñÀ» Ãß°¡ÇÕ´Ï´Ù.
77
78 // IDM_ABOUTBOX´Â ½Ã½ºÅÛ ¸í·É ¹üÀ§¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù.
79 ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
80 ASSERT(IDM_ABOUTBOX < 0xF000);
81
82 CMenu* pSysMenu = GetSystemMenu(FALSE);
83 if (pSysMenu != NULL)
84 {
85 BOOL bNameValid;
86 CString strAboutMenu;
87 bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
88 ASSERT(bNameValid);
89 if (!strAboutMenu.IsEmpty())
90 {
91 pSysMenu->AppendMenu(MF_SEPARATOR);
92 pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
93 }
94 }
95
96 // ÀÌ ´ëÈ­ »óÀÚÀÇ ¾ÆÀÌÄÜÀ» ¼³Á¤ÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ÁÖ Ã¢ÀÌ ´ëÈ­ »óÀÚ°¡ ¾Æ´Ò °æ¿ì¿¡´Â
97 // ÇÁ·¹ÀÓ¿öÅ©°¡ ÀÌ ÀÛ¾÷À» ÀÚµ¿À¸·Î ¼öÇàÇÕ´Ï´Ù.
98 SetIcon(m_hIcon, TRUE); // Å« ¾ÆÀÌÄÜÀ» ¼³Á¤ÇÕ´Ï´Ù.
99 SetIcon(m_hIcon, FALSE); // ÀÛÀº ¾ÆÀÌÄÜÀ» ¼³Á¤ÇÕ´Ï´Ù.
100
101 // TODO: ¿©±â¿¡ Ãß°¡ ÃʱâÈ­ ÀÛ¾÷À» Ãß°¡ÇÕ´Ï´Ù.
102
103 return TRUE; // Æ÷Ä¿½º¸¦ ÄÁÆ®·Ñ¿¡ ¼³Á¤ÇÏÁö ¾ÊÀ¸¸é TRUE¸¦ ¹ÝȯÇÕ´Ï´Ù.
104}
105
106void CChevMsgrClient_MFCDlg::OnSysCommand(UINT nID, LPARAM lParam)
107{
108 if ((nID & 0xFFF0) == IDM_ABOUTBOX)
109 {
110 CAboutDlg dlgAbout;
111 dlgAbout.DoModal();
112 }
113 else
114 {
115 CDialogEx::OnSysCommand(nID, lParam);
116 }
117}
118
119// ´ëÈ­ »óÀÚ¿¡ ÃÖ¼ÒÈ­ ´ÜÃ߸¦ Ãß°¡ÇÒ °æ¿ì ¾ÆÀÌÄÜÀ» ±×¸®·Á¸é
120// ¾Æ·¡ Äڵ尡 ÇÊ¿äÇÕ´Ï´Ù. ¹®¼­/ºä ¸ðµ¨À» »ç¿ëÇÏ´Â MFC ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ °æ¿ì¿¡´Â
121// ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ ÀÌ ÀÛ¾÷À» ÀÚµ¿À¸·Î ¼öÇàÇÕ´Ï´Ù.
122
123void CChevMsgrClient_MFCDlg::OnPaint()
124{
125 if (IsIconic())
126 {
127 CPaintDC dc(this); // ±×¸®±â¸¦ À§ÇÑ µð¹ÙÀ̽º ÄÁÅؽºÆ®ÀÔ´Ï´Ù.
128
129 SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
130
131 // Ŭ¶óÀ̾ðÆ® »ç°¢Çü¿¡¼­ ¾ÆÀÌÄÜÀ» °¡¿îµ¥¿¡ ¸ÂÃä´Ï´Ù.
132 int cxIcon = GetSystemMetrics(SM_CXICON);
133 int cyIcon = GetSystemMetrics(SM_CYICON);
134 CRect rect;
135 GetClientRect(&rect);
136 int x = (rect.Width() - cxIcon + 1) / 2;
137 int y = (rect.Height() - cyIcon + 1) / 2;
138
139 // ¾ÆÀÌÄÜÀ» ±×¸³´Ï´Ù.
140 dc.DrawIcon(x, y, m_hIcon);
141 }
142 else
143 {
144 CDialogEx::OnPaint();
145 }
146}
147
148// »ç¿ëÀÚ°¡ ÃÖ¼ÒÈ­µÈ âÀ» ²ô´Â µ¿¾È¿¡ Ä¿¼­°¡ Ç¥½ÃµÇµµ·Ï ½Ã½ºÅÛ¿¡¼­
149// ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
150HCURSOR CChevMsgrClient_MFCDlg::OnQueryDragIcon()
151{
152 return static_cast<HCURSOR>(m_hIcon);
153}
154
Note: See TracBrowser for help on using the repository browser.