CreateWindowEx 함수; 확장된 스타일을 가진 겹친, 팝업, 또는 자식 창을 만듭니다. 그렇지 않으면,이 함수는 CreateWindow 함수에 동일 합니다. 창 만들기에 대 한 자세한 내용 및 CreateWindowEx의 다른 매개 변수에 대 한 전체 설명은 CreateWindow 를 참조 하십시오.
HWND CreateWindowEx ( DWORD dwExStyle, / / 확장 창 스타일LPCTSTRlpClassName, / / 포인터를 클래스 이름 등록LPCTSTRlpWindowName, / / 창 이름에 대 한 포인터DWORDdwStyle, / / 창 스타일 int x, / / 가로 창의 위치 int y, / / 수직 창의 위치 intnWidth, / / 창 너비 intnHeight, / / 창 높이HWNDhWndParent, / / 부모 또는 소유자 창에 대 한 핸들HMENUhMenu, / / 메뉴 또는 자식 창 식별자에 대 한 핸들HINSTANCEhInstance, / / 응용 프로그램 인스턴스에 대 한 핸들LPVOIDlpParam / / 창 생성 데이터 포인터);
| 스타일 | 의미 |
|---|---|
| WS_EX_ACCEPTFILES | 이 스타일을 사용 하 여 만든 창을 끌어서 놓기 파일을 허용 하는 지정 합니다. |
| WS_EX_APPWINDOW | 창이 표시 되 면 작업 표시줄에 최상위 창이 강제로. |
| WS_EX_CLIENTEDGE | 창에 오목 모서리 테두리를 지정 합니다. |
| WS_EX_CONTEXTHELP | 창의 제목 표시줄에서 물음표를 포함합니다. 클릭할 때 물음표 포인터로 물음표 커서 변경. 사용자는 다음 자식 창을 클릭 하는 경우 자식 WM_HELP 메시지가 받습니다. 자식 창이 부모 창 프로시저 HELP_WM_HELP 명령을 사용 하 여 WinHelp 함수를 호출 해야 하는 메시지를 전달 해야 합니다. 도움말 응용 프로그램에 일반적으로 자식 창에 대 한 도움말을 포함 하는 팝업 창이 표시 됩니다. WS_EX_CONTEXTHELP WS_MAXIMIZEBOX 또는 WS_MINIMIZEBOX 스타일과 함께 사용할 수 없습니다. |
| WS_EX_CONTROLPARENT | 사용자가 tab 키를 사용 하 여 창의 자식 창을 탐색할 수. |
| WS_EX_DLGMODALFRAME | 이중 테두리가; 창을 만듭니다. 창, 필요에 따라 만들 수 있습니다 제목 표시줄 dwStyle 매개 변수에서 WS_CAPTION 스타일을 지정 하 여. |
| WS_EX_LEFT | 창에는 일반 "왼쪽 맞춤" 속성이 있습니다. 이것은 기본값. |
| WS_EX_LEFTSCROLLBAR | 만약 쉘 언어는 히브리어, 아랍어, 또는 다른 언어를 지 원하는 읽기 순서 정렬, 세로 스크롤 막대 (있는 경우)는 클라이언트 영역의 왼쪽. 다른 언어에 대 한 스타일은 무시 하 고 오류로 처리 되지. |
| WS_EX_LTRREADING | 창 텍스트 왼쪽 오른쪽으로 읽기 순서 속성 사용 하 여 표시 됩니다. 이것은 기본값. |
| WS_EX_MDICHILD | MDI 자식 창을 만듭니다. |
| WS_EX_NOPARENTNOTIFY | 이 스타일을 사용 하 여 만든 자식 창을 만들거나 파괴 때 부모 창에 WM_PARENTNOTIFY 메시지 보내기 하지 지정. |
| WS_EX_OVERLAPPEDWINDOW | WS_EX_CLIENTEDGE 및 WS_EX_WINDOWEDGE 스타일을 결합. |
| WS_EX_PALETTEWINDOW | WS_EX_WINDOWEDGE, WS_EX_TOOLWINDOW, 및 WS_EX_TOPMOST 스타일을 결합. |
| WS_EX_RIGHT | 창에는 일반 "오른쪽 맞춤" 속성에. 이 창 클래스에 따라 달라 집니다. 이 스타일 쉘 언어는 히브리어, 아랍어, 또는 다른 언어 읽기를 지 원하는 경우에 효과가 있다 주문 맞춤; 스타일은 무시 하 고 오류로 처리 하지 하는 그렇지 않으면. |
| WS_EX_RIGHTSCROLLBAR | 클라이언트 영역 오른쪽에 세로 스크롤 막대 (있는 경우)입니다. 이것은 기본값. |
| WS_EX_RTLREADING | 만약 쉘 언어는 히브리어, 아랍어, 또는 다른 언어는 지원 순서 맞춤 독서, 창 텍스트 표시 됩니다 오른쪽 왼쪽된 읽기 순서 속성을 사용 하 여. 다른 언어에 대 한 스타일은 무시 하 고 오류로 처리 되지. |
| WS_EX_STATICEDGE | 사용자 입력을 허용 하지 않는 항목에 대해 사용 하기 위한 3 차원 테두리 스타일 창을 만듭니다. |
| WS_EX_TOOLWINDOW | 도구 창;를 만듭니다. 즉, 창 부동 도구 모음으로 사용 될 것. 도구 창에는 일반 제목 표시줄 보다 짧은 제목 표시줄 및 창 제목은 더 작은 글꼴을 사용 하 여 그려집니다. 작업 표시줄 또는 alt + tab을 누를 때 나타나는 대화 상자에는 도구 창이 나타나지 않습니다. 도구 창에 시스템 메뉴, 제목 표시줄에 해당 아이콘이 표시 되지 않습니다. 그러나, 시스템 메뉴를 마우스 오른쪽 단추로 클릭 하거나 alt + 스페이스바를 입력 하 여 표시할 수 있습니다. |
| WS_EX_TOPMOST | 이 스타일을 사용 하 여 만든 창 위의 모든 비-최상위 창 배치 되어야 합니다, 창을 비활성화 하는 경우에, 그들 위에 있어야 지정 합니다. 이 스타일을 추가 하거나 제거, SetWindowPos 함수를 사용 하 여. |
| WS_EX_TRANSPARENT | (만든 동일한 스레드에서) 창 아래에 있는 형제를 색칠까지이 스타일을 사용 하 여 만든 창을 색칠 하지 해야 지정 합니다. 기본 형제 windows 비트 페인트 이미가지고 있기 때문에 창이 투명. 이러한 제한 없이 투명도 달성 하기 위해 사용 된 SetWindowRgn 함수. |
| WS_EX_WINDOWEDGE | 창에 비스듬히 올라가는 가장자리 함께 테두리가 지정. |
WS_EX_RIGHT 스타일 정적 또는 편집 컨트롤을 사용 하 여 각각 SS_RIGHT 또는 ES_RIGHT 스타일을 사용 하 여 같은 효과가 있다. BS_RIGHT 및 BS_RIGHTBUTTON 스타일을 사용 하 여 동일한 효과가지고이 스타일을 사용 하 여 단추 컨트롤.
LpClassName 는 문자열이 면 창 클래스 이름을 지정 합니다. 클래스 이름은 RegisterClassEx 함수 또는 미리 정의 된 컨트롤 클래스 이름으로 등록 된 이름 수 있습니다.
창 스타일 지정 제목 표시줄, lpWindowName 가 가리키는 창 타이틀 제목 표시줄에 표시 됩니다. CreateWindow 를 사용 하 여 단추, 체크 상자 및 정적 컨트롤 등의 컨트롤을 만들 때 lpWindowName 사용 하 여 컨트롤의 텍스트를 지정 합니다.
| 스타일 | 의미 |
|---|---|
| WS_BORDER | 얇은 선 테두리가 있는 창을 만듭니다. |
| WS_CAPTION | (WS_BORDER 스타일 포함) 제목 표시줄에 있는 창을 만듭니다. |
| WS_CHILD | 자식 창을 만듭니다. 이 스타일 WS_POPUP 스타일과 함께 사용할 수 없습니다. |
| WS_CHILDWINDOW | WS_CHILD 스타일이 동일. |
| WS_CLIPCHILDREN | 드로잉 부모 창 내에서 발생 하는 경우 자식 창에 의해 점령 하는 영역을 제외 합니다. 이 스타일은 부모 창을 만들 때 사용. |
| WS_CLIPSIBLINGS | 서로 상대적으로 클립 자식 창 즉, 특정 자식 창을 받으면는 WM_PAINT 메시지 WS_CLIPSIBLINGS 스타일 클립 모든 다른 겹치는 자식 창을 업데이트 하려면 자식 창 영역의 밖으로. WS_CLIPSIBLINGS 지정 되지 않은 자식 창을 겹치는 경우 그것은 가능한 인접 자식 창의 클라이언트 영역 내에 그릴 자식 창의 클라이언트 영역 내에 그릴 때. |
| WS_DISABLED | 처음 비활성화 된 창을 만듭니다. 비활성화 된 창의 사용자 로부터 입력을 받을 수 없습니다. |
| WS_DLGFRAME | 일반적으로 대화 상자를 사용 하는 스타일의 테두리가 있는 창을 만듭니다. 이 스타일 창 제목 표시줄을 가질 수 없습니다. |
| WS_GROUP | 컨트롤 그룹의 첫 번째 컨트롤로 지정합니다. 그룹이 첫 번째 컨트롤 및 WS_GROUP 스타일을 사용 하 여 다음 컨트롤을, 후 정의 된 모든 컨트롤이 구성 됩니다. 일반적으로 각 그룹의 첫 번째 컨트롤 그룹에서 그룹을 이동할 수 있도록 WS_TABSTOP 스타일을 하고있다. 사용자가 이후에 변경할 수 키보드 포커스 그룹에서 한 컨트롤에서의 그룹에서 다음 컨트롤을 방향 키를 사용 하 여. |
| WS_HSCROLL | 가로 스크롤 막대 있는 창을 만듭니다. |
| WS_ICONIC | 처음 최소화 된 창을 만듭니다. WS_MINIMIZE 스타일과 동일. |
| WS_MAXIMIZE | 처음 최대화 된 창을 만듭니다. |
| WS_MAXIMIZEBOX | 최대화 단추가 있는 창을 만듭니다. WS_EX_CONTEXTHELP 스타일을 함께 사용할 수 없습니다. WS_SYSMENU 스타일도 지정 해야 합니다. |
| WS_MINIMIZE | 처음 최소화 된 창을 만듭니다. WS_ICONIC 스타일과 동일. |
| WS_MINIMIZEBOX | 최소화 단추가 있는 창을 만듭니다. WS_EX_CONTEXTHELP 스타일을 함께 사용할 수 없습니다. WS_SYSMENU 스타일도 지정 해야 합니다. |
| WS_OVERLAPPED | 겹친된 창을 만듭니다. 겹쳐진된 창 제목 표시줄과 테두리를 하고있다. WS_TILED 스타일과 동일. |
| WS_OVERLAPPEDWINDOW | WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, 및 WS_MAXIMIZEBOX 스타일을 가진 겹친된 창을 만듭니다. WS_TILEDWINDOW 스타일과 동일. |
| WS_POPUP | 팝업 창을 만듭니다. 이 스타일은 WS_CHILD 스타일과 함께 사용할 수 없습니다. |
| WS_POPUPWINDOW | WS_BORDER, WS_POPUP, 및 WS_SYSMENU 스타일 팝업 창을 만듭니다. 창 메뉴를 표시 하려면 WS_CAPTION 및 WS_POPUPWINDOW 스타일을 결합 해야 합니다. |
| WS_SIZEBOX | 크기 조정 테두리가 있는 창을 만듭니다. WS_THICKFRAME 스타일과 동일. |
| WS_SYSMENU | 창 메뉴의 제목 표시줄에 있는 창을 만듭니다. WS_CAPTION 스타일도 지정 해야 합니다. |
| WS_TABSTOP | 사용자가 tab 키를 누를 때 키보드 포커스를 받을 수 있는 컨트롤을 지정 합니다. Tab 키를 누르면 키보드 포커스를이 WS_TABSTOP 스타일 다음 컨트롤로 변경. |
| WS_THICKFRAME | 크기 조정 테두리가 있는 창을 만듭니다. WS_SIZEBOX 스타일과 동일. |
| WS_TILED | 겹친된 창을 만듭니다. 겹쳐진된 창 제목 표시줄과 테두리를 하고있다. WS_OVERLAPPED 스타일과 동일. |
| WS_TILEDWINDOW | WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, 및 WS_MAXIMIZEBOX 스타일을 가진 겹친된 창을 만듭니다. WS_OVERLAPPEDWINDOW 스타일과 동일. |
| WS_VISIBLE | 처음 표시 되는 창을 만듭니다. |
| WS_VSCROLL | 세로 스크롤 막대 있는 창을 만듭니다. |
X CW_USEDEFAULT로 설정 하는 경우 시스템 윈도우의 왼쪽 위 모서리에 대 한 기본 위치를 선택 하 고 y 매개 변수를 무시 합니다. CW_USEDEFAULT 겹쳐진된 창;에 유효 팝업 또는 자식 창, x 및 y 매개 0으로 설정 됩니다에 대해 지정 하는 경우.
겹쳐진된 창 WS_VISIBLE 스타일 비트 세트를 사용 하 여 만든 x 매개 변수가 CW_USEDEFAULT로 설정 하는 경우 시스템 y 매개 변수를 무시 하는.
Windows NT 5.0 및 이후: 메시지 전용 창을 만들려면, HWND_MESSAGE 또는 기존 메시지 전용 창 핸들 공급.
함수가 성공 하면 반환 값은 새 창에 대 한 핸들.
함수가 실패 하면 반환 값은 NULL입니다. 확장 된 오류 정보를 얻을 하려면 GetLastError.
CreateWindowEx 함수 생성 되 고 창에 WM_NCCREATE, WM_NCCALCSIZE, 및 WM_CREATE 메시지를 보냅니다.
작업 표시줄 만든된 창에 대 한 단추를 표시 하는지 여부를 제어 하는 방법은 참조 작업 표시줄 단추 표시.
다음과 같은 미리 정의 된 컨트롤 클래스는 lpClassName 매개 변수에서 지정할 수 있습니다. 참고 해당 컨트롤 스타일을 dwStyle 매개 변수에서 사용할 수 있습니다.
| 클래스 | 의미 |
|---|---|
| 단추 | 그것을 설정 하거나 해제 하려면 클릭할 수 있는 단추를 나타내는 작은 사각형 자식 창을 지정 합니다. 단독으로 또는 그룹으로 Button 컨트롤을 사용할 수 있습니다 그리고 그들을 분류 하거나 수 또는 텍스트 없이 표시 합니다. Button 컨트롤은 일반적으로 그들을 클릭할 때 모양이 변경 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오 단추. |
| DwStyle 매개 변수에서 지정할 수 있는 버튼 스타일의 테이블에 대 한 단추 스타일 을 참조 하십시오. | |
| COMBOBOX | 목록 상자 및 편집 컨트롤을 비슷한 선택 필드 구성 된 컨트롤을 지정 합니다. 이 스타일을 사용 하는 경우 응용 프로그램 목록 상자 항상 표시 하거나 드롭-다운 목록 상자를 사용 해야 합니다. 목록 상자를 표시 하는 경우 입력 한 문자와 일치 하는 첫 번째 목록 상자 항목을 강조 선택 필드에 문자를 입력 합니다. 반대로, 선택 필드에서 선택한 텍스트를 표시 목록 상자에서 항목을 선택 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 콤보 상자. |
| DwStyle 매개 변수에서 지정할 수 있는 콤보 상자 스타일의 테이블에 대 한 콤보 상자 스타일 을 참조 하십시오. | |
| 편집 | 사용자는 키보드에서 텍스트를 입력할 수 사각형 자식 창을 지정 합니다. 사용자는 컨트롤을 선택 하 고 그것을 클릭 하거나 tab 키를 눌러 이동 하 여 키보드 포커스를 제공 합니다. 사용자 편집 컨트롤 표시 깜박이 캐럿; 텍스트를 입력할 수 있습니다. 마우스를 사용 하 여 선택 문자 대체 될 또는 문자; 삽입 커서를 커서 이동 또는 백스페이스 키를 사용 하 여 문자를 삭제 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 편집 컨트롤. |
| DwStyle 매개 변수에서 지정할 수 있는 편집 컨트롤 스타일의 테이블에 대 한 컨트롤 스타일 편집 을 참조 하십시오. | |
| LISTBOX | 문자열의 목록을 지정합니다. 응용 프로그램 사용자가 선택할 수 있는 파일와 같은 이름의 목록을 제시 해야 합니다 때마다이 컨트롤을 지정 합니다. 사용자는 그것을 클릭 하 여 문자열을 선택할 수 있습니다. 선택한 문자열, 강조 표시 하 고 알림 메시지가 부모 창에 전달 됩니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 목록 상자. |
| DwStyle 매개 변수에서 지정할 수 있는 목록 상자 스타일의 테이블에 대 한 다음 웹 사이트를 참조 하십시오 목록 상자 스타일. | |
| MDICLIENT | MDI 클라이언트 창을 지정합니다. 이 창은 MDI 응용 프로그램의 자식 창을 제어 하는 메시지를 받습니다. 권장된 스타일 비트는 WS_CLIPCHILDREN 및 WS_CHILD입니다. 사용자가 보기에 MDI 자식 창을 스크롤할 수 있는 MDI 클라이언트 창을 만들지 WS_HSCROLL 및 WS_VSCROLL 스타일을 지정 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오 다중 문서 인터페이스. |
| RichEdit | Rich Edit 버전 1.0 컨트롤을 지정합니다. 이 창 수 사용자 보기 문자 및 단락 서식 있는 텍스트를 편집 하 고 포함 된 COM 개체를 포함할 수 있습니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 풍부한 편집 컨트롤. |
| DwStyle 매개 변수에서 지정할 수 있는 풍부한 편집 컨트롤 스타일의 테이블에 대 한 풍부한 편집 컨트롤 스타일 참조. | |
| RICHEDIT_CLASS | Rich Edit 버전 2.0 컨트롤을 지정합니다. 이 컨트롤 사용자 보기 하자 문자 및 단락 서식 있는 텍스트를 편집 하 고 포함 된 COM 개체를 포함할 수 있습니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 풍부한 편집 컨트롤. |
| DwStyle 매개 변수에서 지정할 수 있는 풍부한 편집 컨트롤 스타일의 테이블에 대 한 풍부한 편집 컨트롤 스타일 참조. | |
| SCROLLBAR | 스크롤 상자를 포함 하며 방향 화살표가 양쪽 끝에 있는 사각형을 지정 합니다. 스크롤 막대 컨트롤을 마우스 오른쪽 단추로 클릭할 때마다 부모 창에 알림 메시지를 보냅니다. 필요한 경우 부모 창은 스크롤 상자의 위치를 업데이트 하는 작업을 담당 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 스크롤 막대. |
| DwStyle 매개 변수에서 지정할 수 있는 스크롤 막대 컨트롤 스타일의 테이블에 대 한 스크롤 막대 컨트롤 스타일 을 참조 하십시오. | |
| 정적 | 간단한 텍스트 필드, 상자 또는 레이블, 상자 또는 다른 컨트롤을 구분 하는 데 사용 하는 사각형을 지정 합니다. 정적 컨트롤 입력 걸리고 아무 출력을 제공 합니다. 자세한 내용은 다음 웹 사이트를 참조 하십시오. 정적 컨트롤. |
| DwStyle 매개 변수에서 지정할 수 있는 정적 컨트롤 스타일의 테이블에 대 한 정적 컨트롤 스타일 을 참조 하십시오. |
Windows 95: 시스템 최대 16,364 창 핸들을 지원할 수 있습니다.
Windows CE: Windows CE는 혼자서 메뉴 모음을 지원 하지 않습니다. 자식 창 식별자로 사용 하지 않으면 hMenu 매개 변수가 NULL 이어야.
Windows CE 버전 2.0 이상 지원 다음 두 가지 확장된 창 스타일:
다음 dwExStyle 플래그가 지원 되지 않습니다.
| WS_EX_ACCEPTFILES | WS_EX_LEFTSCROLLBAR |
| WS_EX_LEFT | WS_EX_MDICHILD |
| WS_EX_LTRREADING | WS_EX_PALETTEWINDOW |
| WS_EX_NOPARENTNOTIFY | WS_EX_RIGHTSCROLLBAR |
| WS_EX_RIGHT | WS_EX_TOOLWINDOW |
| WS_EX_RTLREADING | WS_EX_TRANSPARENT |
| WS_EX_APPWINDOW |
Windows CE 1.0 WS_EX_TOPMOST 스타일을 지원 하지 않습니다. 버전 2.0 이상.
다음 dwStyle 플래그가 지원 되지 않습니다.
| WS_CHILDWINDOW | WS_ICONIC |
| WS_MAXIMIZE | WS_MAXIMIZEBOX |
| WS_MINIMIZE | WS_MINIMIZEBOX |
| WS_OVERLAPPEDWINDOW | WS_POPUPWINDOW |
| WS_SIZEBOX | WS_THICKFRAME |
| WS_TILED | WS_TILEDWINDOW |
모든 창을 암시적으로 WS_CLIPSIBLINGS 및 WS_CLIPCHILDREN 스타일을가지고.
Windows CE 1.0는 제외 하 고 대화 상자에 대 한 소유 windows를 지원 하지 않습니다. 창 WS_CHILD 스타일을 암시적으로 주어진 hwndParent 매개 변수가 NULL 인 경우.
nbsp;?Windows &NT: 버전 3.1 이상이 필요 합니다.
Windows:Windows 95 이상이 필요합니다.
Windows CE:버전 1.0 이상이 필요합니다.
헤더:Winuser.h에서 선언합니다.
가져오기 라이브러리:User32.lib를 사용 합니다.
유니코드:Windows NT에서 유니코드와 ANSI 버전으로 구현.
Windows 개요, 창 기능, CLIENTCREATESTRUCT, CREATESTRUCT, CreateWindow, GlobalAddAtom, RegisterClassEx, SetWindowPos, WM_CREATE, WM_NCCALCSIZE, WM_NCCREATE, WM_PAINT, WM_PARENTNOTIFY