개요. | ||||||||||
MFC CDialog 기반 대화상자를 modeless 로 생성하고 종료하는법 정리.
modeless 든 modal 이든 대화상자 템플릿과 클래스를 만드는 기본적인 사항은 동일하며, 생성/종료방법에 따라서, modal, modeless 라고 불린다. 대화상자 생성시 Create 함수호출로 생성하는것을 modeless 라고 한다. 대화상자 생성시 DoModal함수로 생성하는 것을 Modal 대화상자라고 한다.
Modal,Modeless 대화상자 비교.
본 글의 설명에 사용되는 예제 프로젝트
CyFinAPI (VC++ MFC Regular DLL 프로젝트임) 에 추가된 대화상자 클래스 CDlgMain 을 modeless 방식으로 생성하는 예를 보인다.
CyFinAPI 프로젝트 생성과정 상세보기 -> http://igotit.tistory.com/476
CyFinAPI 프로젝트에 대화상자 클래스 CDlgMain 추가 과정 상세보기 -> http://igotit.tistory.com/480
| ||||||||||
|
상세 | |
1. 대화상자 클래스 CDlgMain 타입 변수 m_DlgMain 선언.
여기서는 DLL 의 기본 클래스인 CCyFinAPIApp 에 선언하기록한다.
아래- 대화상자 헤더파일 DlgMain.h 을 인클루드 하고 있고, class CCyFinAPIApp의 멤버변수로 선언되고 있다.
2. CDlgMain 의 생성, 종료함수 호출. 본 예에서는 DLL의 외부 노출함수인 test1, test2 에 생성, 종료 함수 호출하고 있다.
정상 작동확인.
DLL 의 외부 노출 함수 시험용 프로그램인 CyFinAPI_App1 ( http://igotit.tistory.com/483 ) 에서 Button1 클릭(DLL의 함수 test1 호출) 하면 DLL내부의 대화상자가 modeless 방식으로 생성되고, Button2 클릭(DLL의 함수 test2 호출)하면 대화상자 닫힌다.
그림에서 창제목에 CyFinAPI 있는것.
끝. VC++. MFC대화상자 Modeless 생성/종료하기. 예: CyFinAPI DLL 내의 CDlgMain 생성/종료. | |
|
본 글이 포함된 상위 정리 장소.
Visual Studio/VC++/C/C# 활용정리 -> http://igotit.tistory.com/11
|
///481.
'VisualStudio.C++.C#' 카테고리의 다른 글
Visual Studio 2015 Installer 설치하기. (0) | 2015.12.13 |
---|---|
VC++. MFC 대화상자 Alt F4, x버튼, ESC, 엔터 눌러도 안죽게 하기. 예: CyFinAPI DLL 프로젝트 내의 CDlgMain 에 적용. (0) | 2015.12.12 |
Visual Studio 2015 VC++ 배포시. Universal CRT(C RuntTme) 라이브러리 배포 방법. (0) | 2015.12.12 |
VC++ 응용프로그램에서 DLL 사용하기. 예: CyFinAPI.DLL 을 CyFinAPI_App1 에서 사용. (0) | 2015.12.12 |
VC++ 프로젝트에 MFC 대화상자 추가하기. 예: CyFinAPI DLL 프로젝트에 CDlgMain 추가. (0) | 2015.12.11 |
댓글