CWnd::PreCreateWindow
프레임 워크에 연결 하려면이 창 만들기 전에 호출 CWnd 개체입니다.
virtual BOOL PreCreateWindow(
CREATESTRUCT& cs
);
매개 변수
- cs
A 스타일 구조.
반환 값
창 작성을 계속 해야 하는 경우에 0이 아닌. 생성 실패를 나타내려면 0입니다.
설명
경고
CWnd::PreCreateWindow지금의 hMenu 구성원 할당 cs 에 this 메뉴가 있는 경우 포인터 NULL 스타일을 포함 하 고 WS_CHILD.적절 한 기능에 대 한 대화 상자 컨트롤이 아닌 ID 갖도록 NULL.
이 변경 관리/네이티브 interop 시나리오에서 충돌을 해결합니다.A TRACE 문에서 CWnd::Create 개발자의 문제를 경고 합니다.
직접이 함수를 호출 하지 않습니다.
이 함수의 기본 구현은 검사에 NULL 창 클래스 이름 및 적절 한 기본값을 대체. 수정이 멤버 함수를 재정의 하는 CREATESTRUCT 창을 만들기 전에 구조.
각 클래스에서 파생 된 CWnd 를 재정의 하는 자체 기능 추가 PreCreateWindow. 설계상 이러한 파생의 PreCreateWindow 다루지 않습니다. 각 클래스와 스타일 설계가 적절 한 스타일을 확인 하려면 응용 프로그램의 기본 클래스에 대 한 MFC 소스 코드를 검사할 수 있습니다. 재정의 하는 경우 , PreCreateWindow 응용 프로그램의 기본 클래스에 사용 되는 스타일 MFC 소스 코드에서 수집한 정보를 사용 하 여 필요한 기능을 제공 하는지 여부를 확인할 수 있습니다.
창 스타일을 변경에 대 한 자세한 내용은 의 MFC로 만든 창 스타일 변경.
예제
// alter the styles of the mdi frame window
BOOL CMdiChildFrame::PreCreateWindow(CREATESTRUCT& cs)
{
// Create a window without min/max buttons or sizable border
cs.style |= WS_OVERLAPPED | WS_SYSMENU | WS_BORDER;
// Size the window to 1/3 screen size and center it
cs.cy = ::GetSystemMetrics(SM_CYSCREEN) / 3;
cs.cx = ::GetSystemMetrics(SM_CXSCREEN) / 3;
cs.y = ((cs.cy * 3) - cs.cy) / 2;
cs.x = ((cs.cx * 3) - cs.cx) / 2;
return CMDIChildWnd::PreCreateWindow(cs);
}
요구 사항
헤더: afxwin.h