C++/MFC 범범조조 2018. 5. 14. 14:15
MFC 텍스트 관련함수 응용 이번에는 MFC 텍스트 관련함수 응용에 대해서 한번 실습해보도록 하겠습니다. 먼저, MFC 프로젝트를 하나 생성해 줍니다. 대화상자 기반으로 생성을 해 주십시오. 이렇게 설정을 해주시고 마침 버튼을 클릭해 주시면 MFC 대화상자 기반의 프로젝트가 생성되게 됩니다. 그리고 나서 프로젝트 MainDlg.cpp 에 들어가셔서 OnPaint() 함수에 아래와 같은 코드들을 집어 넣어 주세요.
더 읽기
C++/MFC 범범조조 2018. 5. 11. 14:47
MFC 사용자 정의 메시지 이번에는 MFC에서 사용자 정의 메시지를 사용하는 방법을 알아보도록 하겠습니다. 먼저 대화상자 기반으로 해서 MFC Application을 하나 만들어 주세요. 그러면 다음과 같은 대화상자가 생기면서 프로젝트가 만들어 졌습니다. 여기까지 하셨다면 이제는 사용자 정의 함수를 만드는 방법을 알려드리도록 하겠습니다. 제일 먼저 사용자 메시지를 정의할 Def.h를 만들어 주시고 아래와 같이 소스 코드를 작성하여 주세요. Def.h 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 // 구현입니다. protected: HICON m_hIcon; // 생성된 메시지 맵 함수 virtual BOOL OnInitDialog(); afx_msg void OnSysComman..
C++/MFC 범범조조 2018. 5. 10. 14:58
CDC 클래스 MFC 에서는 출력과 관련한 다양한 정보를 제공해주는 디바이스 컨텍스트(DC, Device Context)를 제공하고 있습니다. DC는 응용 프로그램 화면에 출력하는 작업을 처리하기 위해서 필요한 속성을 정의하고 있는 자료구조 입니다. CDC 클래스는 텍스트를 출력하거나 그래픽 이미지를 출력하는 등에 관련된 다양한 멤버함수로 구현되어 있습니다. 그러면 CDC클래스를 이용하여 MFC에서는 어떻게 실제로 윈도우 상에 출력을 해주는지 예제를 통해 알아보도록 하겠습니다. 대화상자 기반으로 MFC 프로젝트 하나를 생성해 줍니다. 123456789101112131415161718192021222324252627282930313233void CMFCCDCDlg::OnPaint(){ if (IsIconi..
C++/MFC 범범조조 2018. 5. 10. 14:34
_T() 매크로 함수 _T() 는 유니코드 플랫폼 환경에서 사용된 문자열 형태로 변환하기 위해서 사용하는 매크로 함수 입니다. 유니코드는 나라별로 서로 다른 언어체계를 가지고 있지만, 국가별 모든 언어에 대해서 고유번호를 제공하여 어떤 플랫폼, 프로그램, 언어에도 상관없이 모든 문자들을 처리할 수 있도록 한 코드 체계 입니다. CDC *pDc = GetDC(); pDC->TextOutA(100,20,_T("MFC Application")); ReleaseDC(pDC);
C++/MFC 범범조조 2018. 5. 4. 10:53
MFC를 이용하여 소켓 프로그래밍 작업 중 AfxGetMainWnd() 함수를 사용하던 중 뜻하지 않은 에러를 마주하게 되었습니다. 웹 검색을 통해서 알아본 결과 다른 함수와는 달리 AfxGetMainWnd() 함수는 스레드와 관련이 있어서 주의하여야 한다고 합니다. _AFXWIN_INLINE CWnd* AfxGetMainWnd() { CWinThread *pThread = AfxGetThread(); return pThread != NULL ? pThread -> GetMainWnd() : NULL; } 위의 코드를 보시게 되면 내부에서 AfxGetThread() 함수를 사용하는 것을 볼 수가 있습니다. 즉, 현재 스레드의 GetMainWnd() 함수를 호출합니다. 이와 같은 사용은 다른 스레드에서 메..