Win32程序创建窗体第一个坑 CreateWindowEx 失败

add by wjb date 2018/08/04

由于工作需要开始学习winAPI,第一个程序是创建一个窗体,但是在执行CreateWindowEx 总是失败,返回值HWnd 总是为NULL。

复制原来某些教程中的代码就可以创建成功,对于WNDCLASSEX的参数挨个对比,最后发现  WNDCLASSEX的lpszClassName参数与 CreateWindowEx(NULL,  L"DWindow",   L"OPENGL Window",   WS_OVERLAPPEDWINDOW,     100, 100, 800, 600,  0, 0, 
        hinstance,  0);中第二个参数不相同,一定要注意这个参数,记录下一自己的错误,也希望能帮助大家。

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Win32窗体程序是一种使用Windows API编写的GUI程序,它的工作机制主要包括以下几个方面: 1. 注册窗口类:程序启动时,通过调用RegisterClassEx函数,向系统注册一个窗口类。在注册窗口类时,需要指定窗口类的属性,如窗口过程、背景颜色、图标等。 2. 创建窗口:通过调用CreateWindowEx函数,创建一个窗口。在创建窗口时,需要指定窗口类的名称、窗口标题、位置、大小等属性。 3. 处理消息:窗口程序通过窗口过程来处理窗口消息,如鼠标点击、键盘输入、窗口移动等。窗口过程是一个回调函数,由系统调用,接收消息并做出响应。 4. 绘制窗口:当窗口需要绘制时,可以在WM_PAINT消息中进行绘制操作。在WM_PAINT消息中,可以调用BeginPaint和EndPaint函数获取设备上下文(DC)并进行绘制。 5. 销毁窗口:当窗口不再需要时,通过调用DestroyWindow函数来销毁窗口。 一个完整的Win32窗体程序的主要编程实现步骤如下: 1. 定义窗口类:定义一个窗口类,包括窗口过程、背景颜色、图标等属性。 2. 注册窗口类:在WinMain函数中,调用RegisterClassEx函数,向系统注册窗口类。 3. 创建窗口:在WinMain函数中,调用CreateWindowEx函数,创建一个窗口。 4. 处理消息:在窗口过程中,处理窗口消息,如WM_PAINT、WM_LBUTTONDOWN等消息。 5. 绘制窗口:在WM_PAINT消息中,进行绘制操作,如绘制文本、图形等。 6. 显示窗口:在窗口创建完成后,调用ShowWindow函数,显示窗口。 7. 进入消息循环:在WinMain函数中,进入消息循环,等待窗口消息的到来。 8. 退出程序:当接收到退出窗口的消息时,调用PostQuitMessage函数,退出程序。 通过上述步骤,可以编写一个基本的Win32窗体程序,实现窗口的创建、绘制、消息处理等功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值