티스토리 뷰

이번엔 윈도우 생성이다.

윈도우 생성은 CreateWindow()라는 함수로 이루어진다.

 

윈도우 CreateWindow()를 먼져 대충 살펴 보면

 

1
2
3
4
5
6
7
8
9
10
11
12
13
HWND CreateWindow(
      LPCTSTR lpClassName,
      LPCTSTR lpWindowName,
      DWORD dwStyle,
      int x,
      int y,
      int nWidth,
      int nHeight,
      HWND hWndParent,
      HMENU hMenu,
      HINSTANCE hInstance,
      LPVOID lpParam
);
cs

위와 같다.

 

이제 차근차근 살펴보면

LPCTSTR lpClassName은 윈도우를 생성할 때 사용할 윈도우 클래스 이름을 받는 인자이며, 자기가 정의한 윈도우 클래스 이름을 넣어주면 된다. 그 외에 이미 많들어져 있는 클래스도 있어 그 클래스의 이름을 넣어 줘도 된다.

 

LPCTSTR lpWindowName은 윈도우의 이름이다. 일반 윈도우에선 이 인자의 값이 타이틀이 된다.

 

DWORD dwStyle은 윈도우 스타일을 지정해주는 인자이다. 스타일은 매크로로 WS_XXX와 같은 방식으로 이미 많들어져 있고, 그 중 하나를 예를 들자면 WS_BORDER윈도우의 테투리를 있게 해준다. (나머지 스타일은 아래를 참조)

 

int x, int y, int nWidth, int nHeight 들은 각각 차례대로 출력 X좌표, 출력 Y좌표, 윈도우 너비, 윈도우 높이이다.

그리고 이 4가지 인자엔 CW_USEDEFAULT를 넣어 줄 수 있는데 이는 컴퓨터가 알아서 좌표와 너비 정하게 한다.

 

HWND hWndParent는 부모 윈도우의 HWND 값을 넣어주는 인자이다.


HMENU hMenu는 컨트롤 윈도우에 관련된 것으로 일단 생략한다.


HINSTANCE hInstance는 그 윈도우가 속할 인스턴스의 핸들을 넣어주는 인자이다.


LPVOID lpParam은 왠만하면 사용하지 않으므로 생략한다.


#C, #C++, #gui, #WinAPI, #윈도우, #생성, #CreateWindow

'C & C++ > API' 카테고리의 다른 글

부모 윈도우와 자식 윈도우 설정  (0) 2014.11.06
컨트롤 윈도우  (0) 2014.11.05
메세지 처리 - WndProc() - 1 -  (0) 2014.11.04
윈도우 클래스 생성 및 정의 - WNDCLASS  (0) 2014.10.22
윈도우 프로그래밍 기초  (0) 2014.10.22
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday