RegisterClass/RegisterClassEx -- 注册窗口类

(1)函数原型

1 //RegisterClass
2 ATOM RegisterClass(
3      const WNDCLASS * lpWndClass    //Long pointer to a WNDCLASS structure
4      );
5 
6 //RegisterClassEx
7 ATOM RegisterClassEx(
8     CONST WNDCLASSEX * lpwcx    //Pointer to a WNDCLASSEX structure
9     );

(2)函数说明

RegisterClass()函数注册一个窗口类,RegisterClassEx()函数注册一个拓展的窗口类。如果注册成功,两个函数都会返回非零值,否则都返回0。

头文件:winuser.h

链接库:user32.lib

(3)参数说明

lpWndClass:一个指向WNDCLASS结构的长指针,在传递给函数之前,必须使用合理的类属性来填充此结构。

lpwxz:一个指向WNDCLASSEX结构的长指针,在传递给函数之前,必须使用合理的类属性来填充此结构。

(4)典型事例

 1 int APIENTRY WinMain(
 2     HINSTANCE hinstance,    //handle of current instance
 3     HINSTANCE hinstPrev,    //handle of previous instance
 4     LPSTR lpCmdLine,    //address of command-line string
 5     int nCmdShow)    //show-window type
 6 {
 7     WNDCLASS wc;
 8     
 9     //注册窗口类
10     wc.style = CS_HREDRAW | CS_VREDRAW;
11     wc.lpfnWndProc = (WNDCLASS)MainWndProc;
12     wc.cbClsExtra = 0;
13     wc.cbWndExtra = 0;
14     wc.hInstance = hinstance;
15     wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
16     wc.hCursor = LoadCursor(NULL, IDC_ARROW);
17     wc.hbrBackground = GetStockObject(WHITE_BRUSH);
18     wc.lpszMenuName = "MainMenu";
19     wc.lpszClassName = "MainWindowClass";
20     
21     if(!RegisterClass(&wc))
22         return FALSE;
23     // ...
24     // ...
25 }

 当第7行使用WNDCLASSEX声明变量时,相应的21行就要用RegisterClassEx()函数注册窗口。

  <参考文献>Windows API程序设计参考大全/求是科技/ISBN 7-115-14167-3

转载于:https://www.cnblogs.com/Joseph-AMI/p/3515196.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值