窗口的创建CreateWindow/CreateWindowEx函数使用说明
CreateWindow/CreateWindowEx
HWND CreateWindowEx(
DWORD dwExStyle, // 窗口的扩展风格。
LPCTSTR lpClassName, // 窗口类名。
LPCTSTR lpWindowName, // 窗口标题栏的文字信息
DWORD dwStyle, // 窗口的基本风格。
int x, // 窗口左上角X轴坐标。
int y, // 窗口左上角Y轴坐标。
int nWidth, // 窗口的宽度。
int nHeight, // 窗口的高度。
HWND hWndParent, // 窗口的父窗口句柄。
HMENU hMenu, // 窗口的菜单句柄。
HINSTANCE hInstance, // 应用程序实例句柄。
LPVOID lpParam // 窗口创建的附加数据。
);
2 子窗口的创建
2.1 创建时要设置父窗口句柄。
2.2 创建子窗口时要设置WS_CHILD
3 窗口类和窗口的附加数据
3.1 作用
注册窗口时,可以设置窗口类和窗口附加数据
缓冲区的大小。
int cbClsExtra - 窗口类附加数据的BUFF大小。
int cbWndExtra - 窗口附加数据的BUFF大小。
可以提供缓冲区,存放数据。
3.2 窗口类附加数据的使用
3.2.1 定义数据空间的大小
int cbClsExtra - 一般定义为4的倍数。
3.2.2 存入数据
DWORD SetClassLong(
HWND hWnd, // 窗口句柄。
int nIndex, // 字节的索引号。
LONG dwNewLong // 存放的值。
);//返回旧的数据。
3.2.3 读取数据
DWORD GetClassLong(
HWND hWnd, // 窗口句柄。
int nIndex // 字节的索引号。
);//返回数据。
3.3 窗口的附加数据的使用
3.3.1 定义数据空间的大小。
int cbWndExtra - 一般定义为4的倍数。
3.3.2 存入数据
LONG SetWindowLong(
HWND hWnd, // 窗口句柄。
int nIndex, // 字节的索引号。
LONG dwNewLong // 存放的值。
);
3.3.3 读取数据
LONG GetWindowLong(
HWND hWnd, // 窗口的句柄。
int nIndex // 字节的索引号。
);//返回数据。
3.4 不同点
窗口类的附加数据提供的BUFF,是所有属于该类
的窗口共享的BUFF.
窗口的附加数据提供的BUFF,只属于该窗口私有
,是窗口的私有的BUFF.