프로그래밍

MFC : MDI 프로그램 시작 시 차일드 윈도우 띄우지 않기

바보세룐 2008. 3. 2. 15:58
원문 : http://kr.blog.yahoo.com/his636/1305370


MDI 프로그램을 만들면 항상 child window 가 뜬 채로 시작하는데,
파일을 open 하였을 경우에만 창이 나타나도록 하고 싶다.

이를 제어하기 위해서는

BOOL CXXXApp::InitInstance()

함수에서 다음 부분을 수정하면 된다.
 
CCommandLineInfo cmdInfo;
cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing; // 이부분 추가
ParseCommandLine(cmdInfo);


이해를 돕기 위해 CCommandLineInfo 클래스의 정의를 보면 다음 부분을 볼 수 있다.

enum { FileNew, FileOpen, FilePrint, FilePrintTo, FileDDE, AppRegister,
  AppUnregister, FileNothing = -1 } m_nShellCommand;

m_nShellCommand 변수에 기본적으로 할당된 값은 FileNew 이다.


















이 값을 자신이 원하는 값으로 변경하여 주면 된다.