흠.. 역시나 윈도우 프로그램에서 가장 중요한 것은 윈도우다.. 즉, 멀 띄우든지 그 기본이 되는 배경이 있어야 할 것이 아닌가..
윈도우 프로그래밍에서 예전 글에 있는 윈도우 클래스를 참조하여 CreateWindow 함수를 이용 윈도우를 만든다.

HWND CreateWindow(lpszClassName, lpszWindowName, dwStyle, x, y, nWidth, nHeight, hwndParent, hmenu, hinst, lpvParam)

이 것이 Create Window의 함수 원형이다.

lpszClassName : 생성하고자 하는 윈도우의 클래스를 지정하는 문자열이다. CreateWindow 함수는 윈도우 클래스에 정의된 속성되로 윈도우를 생성하는데, 앞서 등록한 WNDCLASS 구조체의 lpszClassName 멤버의 이름을 여기 넣는다.

lpszWindowName : 윈도우 타이틀 바에 나타날 문자열이다.

dwStyle : 만들고자 하는 윈도우의 형태를 지정하는 인수이다. 일종의 비트 필드값이며 수십개의 매크로 상수들이 정의되어 있으니 필요한 형태로 쓰면 된다.

x,y  : 윈도우의 시작 위치를 의미한다.

nWidth,nHeight : 윈도우의 크기를 의미한다. 즉 640x480 이면 x,y 위치에 640x480 크기의 윈도우가 생긴다.

hwndParent : 부모 윈도우가 있을 경우 부모 윈도우의 핸들을 지정한다.

hmenu : 사용할 메뉴의 핸들을 지정한다.

hinst : 프로그램의 핸들을 지정한다. WinMain의 인수로 전달된 hInstance를 대입하면 된다.

lpvParam : 보통은 NULL 값을 넣으므로 일단 무시.

이렇게 윈도우를 만들었으면 화면에 보여야 할 것이다. 화면에 표시하는 함수가..

BOOL ShowWindow(hWnd, nCmdShow )

이다.

hWnd는 화면에 출력하고자하는 윈도우의 핸들이며 createWindow 함수가 리턴한 핸들을 그대로 넘기면되고, nCmdShow는 윈도우를 화면에 출력하는 방법을 지정하는 것인데 다음과 같이 정의되어 있다.

SW_HIDE : 윈도우를 숨긴다.
SW_MINIMIZE : 윈도우를 최소화 하고 활성화 시키지 않는다.
SW_RESTORE : 윈도우를 활성화 시킨다.
SW_SHOW : 윈도우를 활성화하여 보여준다.
SW_SHOWNORMAL : 윈도우를 활성화하여 보여준다.


'프로그래밍 > API' 카테고리의 다른 글

[API] 커서 바꾸기..  (0) 2011.08.03
[API] 메시지 루프  (0) 2011.08.02
[API] 윈도우 클래스  (0) 2011.08.01
[API] 유니코드  (0) 2011.07.31
[API] 핸들에 대한 이해..  (0) 2011.07.31
Posted by 바람처럼..
|