捐助郴维网
感谢您对郴维网的支持,你的支持将是郴维网持续发展的动力!
二维码
×
当前位置:郴维网 >API档案 > 正文
1 2017.07

WNDCLASSEX 结构

点击次数:1312 更新时间:2017-7-1 20:39:46  【打印此页

原文链接 -> 传送门

WNDCLASSEX 结构

WNDCLASSEX 结构包含窗口类的信息。这个结构被 RegisterClassEx 和 GetClassInfoEx 函数所使用。

WNDCLASSEX 结构与 WNDCLASS 结构类似。但有两处不同:WNDCLASSEX 结构包含用来指定该结构体大小的 cbSize 成员,和一个 hIconSm 成员,hIconSm 这个成员指定与窗口类关联的小图标的句柄。


结构原型:
 

typedef struct tagWNDCLASSEX {
  UINT      cbSize;
  UINT      style;
  WNDPROC   lpfnWndProc;
  int       cbClsExtra;
  int       cbWndExtra;
  HINSTANCE hInstance;
  HICON     hIcon;
  HCURSOR   hCursor;
  HBRUSH    hbrBackground;
  LPCTSTR   lpszMenuName;
  LPCTSTR   lpszClassName;
  HICON     hIconSm;
} WNDCLASSEX, *PWNDCLASSEX;


结构解析:
 

成员

含义

cbSize

1. 指定这个结构占用的字节数
2. 一般设置这个成员为 sizeof(WNDCLASSEX)
3. 在调用 GetClassInfoEx 函数之前确保设置了这个成员

style

指定窗口类型,各种“类风格”(详见下方 ↓)可以使用按位或操作符组合起来

lpfnWndProc

指定窗口过程(必须是回调函数)

cbClsExtra

预留的额外空间,一般为 0

cbWndExtra

预留的额外空间,一般为 0

hInstance

应用程序的实例句柄

hIcon

为所有基于该窗口类的窗口设定一个图标

hCursor

为所有基于该窗口类的窗口设定一个鼠标指针

hbrBackground

指定窗口背景色

lpszMenuName

指定窗口菜单

lpszClassName

指定窗口类名

hIconSm

1. 指定与窗口类关联的小图标的句柄
2. 如果这个成员为 NULL,则系统将把 hIcon 指定的图标转换成大小合适的小图标



style 类风格解析
 

类风格

含义

CS_VREDRAW

移动或者调整窗口的高度(垂直方向)时,重绘整个窗口

CS_HREDRAW

移动或者调整窗口的宽度(水平方向)时,重绘整个窗口

CS_DBLCLKS

当用户光标在窗口内双击时,允许发送双击消息给窗口过程

CS_OWNDC

给予每个窗口实例分配一个唯一的 DC(注意,尽管这样是很方便,但它必须慎重使用,因为每个 DC 大约要占 800 个字节的内存)

CS_CLASSDC

该窗口类的所有窗口实例都共享一个窗口类 DC

CS_PARENTDC

1. 将子窗口的裁剪区域设置到父窗口的 DC 中去,这样子窗口便可以在父窗口上绘制自身。(注意,这是子窗口从系统缓存中获取 DC,而不是使用父窗口的 DC。)
2. 指定该风格可以提高系统性能

CS_NOCLOSE

禁止系统菜单的关闭选项

CS_SAVEBITS

1. 以位图形式保存被该窗口遮挡的屏幕部分,当给窗口移动以后,系统便可以用该保存的位图恢复屏幕移动的相应部分,从而系统不用向被该窗口遮挡的窗口发送 WM_PAINT 消息
2. 该特性对于菜单类型的窗口比较合适,因为它通常是简短的显示一下之后便消失
3. 设置该特性将增加显示该窗口的时间,因为它通常要先分配保存位图的内存

CS_BYTEALIGNCLIENT

在字节边界上(在 x 方向上)定位窗口的用户区域的位置

CS_BYTEALIGNWINDOW

在字节边界上(在 x 方向上)定位窗口的位置

CS_GLOBALCLASS

1. 当调用 CreateWindow 或 CreateWindowEx 函数来创建窗口时允许它的 hInstance 参数和注册窗口类时传递给 RegisterClass 的 hInstance 参数不同
2. 如果不指定该风格,则这两个 hInstance 必须相同



需求:
 

Minimum supported client

Windows 2000 专业版 [仅桌面应用程序]

Minimum supported server

Windows 2000 服务器版 [仅桌面应用程序]

Header

Winuser.h (包含于 Windows.h)

Unicode and ANSI names

WNDCLASSEXW (Unicode) 和 WNDCLASSEXA (ANSI)

提示
郴维网为您提供各类专业服务:
软件开发,电脑配件销售,WIFI路由器销售,上门电脑维修,上门安装系统,系统安装,软、硬件安装,电脑除尘清灰,显示器维修,WIFI安装调试,服务器维护,数据恢复,密码破解,网络布线,网络检修,打印机维修,打印机加碳粉,苹果电脑安装系统,苹果电脑安装双系统,监控安装维护,电脑外包,笔记本电脑维修,餐饮、美容行业软件安装 等。。。。。。
点击次数:1312 更新时间:2017-7-1 20:39:46  【打印此页

上一条:UnregisterClass

下一条:CreateFontIndirectEx

关键词推荐:郴州电脑城 郴州电脑维修公司 维修电脑公司 郴州软件开发 上门电脑维修 上门安装系统 笔记本电脑维修 郴州打印机维修 打印机加碳粉 电脑安装双系统 苹果电脑双系统 液晶显示器维修 联想笔记本维修 联想笔记本维修电话 戴尔笔记本维修电话 郴州戴尔笔记本维修 戴尔笔记本郴州维修点 华硕笔记本维修点 郴州华硕笔记本维修 郴州笔记本上网维修