.窗口的创建步骤:
1.设计一个窗口类:
WNDCLASS结构体参数:
(1) UINT style:窗口类的类型,
(2) WNDPROC lpfnWndProc:窗口的过程,接收一个指针,在程序中会将一个回调函数赋给他,有系统自动调用
(3) int cbClsExtra:追加一定字节的额外存储空间,附加内存空间,常设置为0
(4) int cbWndExtra:窗口的附加内存,常置为0
(5) HINSTANCE hInstance:窗口的实例号
(6) HICON hIcon:常用LoadIcon来为其赋值,LoadIcon为一个结构体,第一个参数是HINSTANCE hInstance ,当需要加载一个系统自带的标准图标的时候,改参数应该设置为NULL;第二个参数LPCTSTR lpIconName就取系统定义的宏 (也可以用CreateIcon来自己创建一个Icon)
(7) HCURSOR hCursor:用LoadCursor(NULL , xxx)来赋值,同上
(8) HBRUSH hbrBackground :一个画刷的句柄,指的是窗口的颜色;用函数GetStockObject来为其赋值;hbrBackground = (HBRUSH)GetStockObject(DKGRAY_BRUSH)(括号中表示的是画刷的类型)
(9).LPCTSTR lpszMenuName :设置菜单名字,没有菜单就置为空
(10).LPCTSTR lpszClassName :给窗口取一个名字
2.注册窗口类 :
RegisterClass(窗口类结构体的指针):如RegisterClass(&wndclass)
3.创建窗口:
(1)创建一个句柄,指向窗口;
HWND hwnd;
hwnd = CreateWindow()(其中的参数见下)
第一个必须为已经注册过后的窗口名;
- 显示及跟新窗口
ShowWindow(HWND hWnd,int mCmdStyle) (在哪里显示窗口,以怎样的形态显示,最大化还是最小化)
UpdateWindow( hwnd )