复习win32-温故而知新

一、窗口的创建

分五步:

1、设计(对图标之类的各种东西进行初始化)

2、注册(调用函数RegisterClassEx())

3、创建(调用函数CreateWindow())

4、显示(调用函数ShowWindow())

5、消息循环(主要部分)

附窗口创建的代码:

#include<windows.h>

//窗口消息处理函数
LRESULT CALLBACK WndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
switch(uMsg)
{
case WM_CLOSE: //点x 窗口关闭的消息
::PostQuitMessage(0); //发送推出的消息
break;
}
return ::DefWindowProc(hWnd,uMsg,wParam,lParam);
}
int CALLBACK WinMain(HINSTANCE hinstance,
HINSTANCE hPrelnstance,
LPSTR pCmdLine,
int nCmdShow)
{
HBRUSH hBrush = ::CreateSolidBrush(RGB(255,255,255));
//1、设计
WNDCLASSEX wndclass;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0; //是否要分配额外的空间
wndclass.cbSize = sizeof(WNDCLASSEX);
wndclass.hbrBackground = hBrush; //背景颜色
wndclass.hCursor = LoadCursor(NULL,MAKEINTRESOURCE(IDC_HELP)); //光标
wndclass.hIcon = NULL; //窗口图标
wndclass.hIconSm = NULL; //窗口左上小图标
wndclass.hInstance = hinstance; //当前实例的句柄
wndclass.lpfnWndProc = WndProc; //消息处理函数
wndclass.lpszClassName = “-_-“; //注册窗口类的名字
wndclass.lpszMenuName = NULL; //菜单名
wndclass.style = CS_HREDRAW|CS_VREDRAW; //窗口类的样式

//2、注册
if(::RegisterClassEx(&wndclass) == FALSE)
{
::MessageBox(NULL,”注册失败”,”提示”,MB_OK);
return 0;
}

//3、创建
HWND hWnd = ::CreateWindow(“-_-“,”哒哒哒”,WS_OVERLAPPEDWINDOW,100,0,500,500,NULL,NULL,hinstance,NULL);
if(hWnd == NULL)
{

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值