标签:
附加数据的作用:
注册窗口时,设置这两个数据的大小,可以提供窗口类和窗口存放自己的数据的空间。
1.窗口类附加数据
int cbClsExtra //窗口类附加数据buff大小
(1)用法:
a.申请缓冲区
窗口对象.cbClsExtra = 200; //一般赋4的倍数
b.写入数据
DWORD SetClassLong(
HWND hWnd; //窗口句柄
int nIndex; //字节索引号(从哪个字节开始存)
LONG dwNewLong; //存入的数据
);
c.读取数据
DWORD GetClassLong(
HWND hWnd; //窗口句柄
int nIndex; //字节索引号(从哪个字节开始读)
);//返回值获取读到的数据
2.窗口附加数据缓冲区
int cbWndExtra //窗口附加数据buff大小
(1)用法:
a.申请缓冲区
窗口对象.cbWndExtra = 200; //一般是4的倍数
a.写入数据
LONG SetWindowLong(
HWND hWnd; //窗口句柄
int nIndex; //字节索引号(从哪个字节开始存)
LONG dwNewLong; //写入的数据
);
c.读取数据
LONG GetWindowLong(
HWND hWnd; //窗口句柄
int nIndex; //字节索引号(从哪个字节开始读)
);//返回值是读到的数据
3.区别
窗口类附加数据缓冲区:是所有基于该窗口类创建出来的窗口共享的缓冲区。
窗口附加数据缓冲区:是窗口自己私有的缓冲区,即便是基于同一个窗口类创建出来的窗口,相互之间也不共享。
标签:
原文地址:http://www.cnblogs.com/csqtech/p/5575132.html