简单的API窗口

#include<windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);//窗口函数说明
//----------------------以下初始化窗口类------------------------------
int WINAPI WinMain(HINSTANCE hInstance,//WinMain函数说明
       HINSTANCE hPrevInst,
       LPSTR lpszCmdLine,
       int nCmdShow)
{
 HWND hwnd;
 MSG Msg;
 WNDCLASS wndclass;
 char lpszClassName[]="窗口";//窗口类名
 char lpszTitle[]="My_Windows";//窗口标题名

 //窗口类的定义
 wndclass.style=0;//窗口类型为默认类型
 wndclass.lpfnWndProc=WndProc;//窗口处理函数为WndProc
 wndclass.cbClsExtra=0;//窗口类无扩展
 wndclass.cbWndExtra=0;//窗口实例无扩展
 wndclass.hInstance=hInstance;//当前实例句柄
 wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
                           //窗口的最小化图标为默认图标
 wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
                          //窗口采用箭头光标
// wndclass.hbrBackground=GetStockObject(DEFAULT_PALETTE);
 
 wndclass.hbrBackground=NULL;
                           //窗口背景为白色
 wndclass.lpszMenuName=NULL;//窗口中无菜单
 wndclass.lpszClassName=lpszClassName;
                            //窗口类名为"窗口示例"
 //-------------------------以下进行窗口类的注册-------------------------------
 if(!RegisterClass(&wndclass))               //如果注册失败则发出警告声音
 {
  MessageBeep(0);
  return FALSE;
 }

 //创建窗口
 hwnd=CreateWindow(lpszClassName,//窗口类名
  lpszTitle,//窗口实例的标题名
  WS_OVERLAPPEDWINDOW,//窗口的风格
  CW_USEDEFAULT,
  CW_USEDEFAULT,   //窗口左上角坐标为默认值
  CW_USEDEFAULT,
  CW_USEDEFAULT,    //窗口的高和宽为默认值
  NULL,             //此窗口无父窗口
  NULL,             //此窗口无主菜单
  hInstance,//创建此窗口的应用程序的当前句柄
  NULL);//不使用该值
 //显示窗口
 ShowWindow(hwnd,nCmdShow);
 //绘制用户区
 UpdateWindow(hwnd);
 //消息循环
 while(GetMessage(&Msg,NULL,0,0))
 {
  TranslateMessage(&Msg);
  DispatchMessage(&Msg);
 }
 return Msg.wParam;//消息循环结束即程序终止时将信息返回系统
}

//窗口函数
LRESULT CALLBACK WndProc(HWND hwnd,
       UINT message,
       WPARAM wParam,
       LPARAM lParam)
{
 switch(message)
 {
 case WM_DESTROY:
   PostQuitMessage(0);//调用PostQuitMessage发出WM_QUIT消息
 default:
  return DefWindowProc(hwnd,message,wParam,lParam);
 }
 return(0);
}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值