win32的创建窗口代码

 

 

 

 

 #include"stdafx.h"
HINSTANCE g_hInstance = 0;
//窗口处理函数
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch (message)
    {
    case WM_DESTROY:
        PostQuitMessage(0);  //能够使GetMessage返回0?
    
        break;
    }
    return DefWindowProc(hWnd, message, wParam, lParam);  //给各种消息做默认处理
}
//注册窗口类
void Register(LPSTR lpClassName, WNDPROC wndproc){
    WNDCLASS wce = { 0 };
    //wce.cbSize = sizeof(wce);
    wce.cbClsExtra = 0;
    wce.cbWndExtra = 0;
    wce.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1);
    wce.hCursor = NULL;
    wce.hIcon = NULL;
    //wce.hIconSm = NULL;
    wce.hInstance = g_hInstance;
    wce.lpfnWndProc = wndproc;
    wce.lpszClassName = _TEXT("lpClassName");
    wce.lpszMenuName = NULL;
    wce.style = CS_HREDRAW | CS_VREDRAW;
    RegisterClass(&wce);//将以上所有赋值全部写入操作系统
}
//创建主窗口
HWND CreateMain(LPSTR lpClassName, LPSTR lpWndName){
    HWND hWnd = CreateWindowEx(0,_TEXT("lpClassName"),_TEXT("lpWndName"),WS_OVERLAPPEDWINDOW,100,100,700,500,NULL,NULL,g_hInstance,NULL);
    return hWnd;
}
//显示窗口
void Display(HWND hWnd){
    ShowWindow(hWnd, SW_SHOW);
    UpdateWindow(hWnd);
}
//消息循环
void Message(){
    MSG nMsg = { 0 };
    while (GetMessage(&nMsg,NULL,0,0))
    {
        TranslateMessage(&nMsg);
        DispatchMessage(&nMsg);  //交给窗口处理函数
    }
}
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow){
    //HWND hWnd;
    g_hInstance = hInstance;  //当前程序实例句柄
    Register("Main",WndProc);
    HWND hWnd=CreateMain("Main", "window");
    Display(hWnd);
    Message();
    return 0;
}


以上代码自己写的有错望纠正!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值