zoukankan      html  css  js  c++  java
  • windows sdk编程为应用程序添加图标

    #include <windows.h> 
    
    /*消息处理函数声明*/
    HRESULT CALLBACK WindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
    
    int APIENTRY WinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPSTR     lpCmdLine,
                         int       nCmdShow)
    {
        
         HWND hwnd;
         MSG message;
        WNDCLASS wndClass;
        
        char szClassName[] = "MainWindonClass";//窗体类名
        
        DWORD dwStyle = WS_OVERLAPPEDWINDOW; //设置窗体样式 ,禁止改变窗体大小 
        
        /*窗口类设置*/
        wndClass.style = CS_DBLCLKS;
        wndClass.lpfnWndProc=WindowProc;
        wndClass.cbClsExtra=0;
        wndClass.cbWndExtra=0;
        wndClass.hInstance=hInstance;
        wndClass.hIcon=(HICON)LoadImage(NULL,"1.ico",IMAGE_ICON,0,0,LR_LOADFROMFILE);
        wndClass.hCursor=LoadCursor (NULL, IDC_ARROW);
        wndClass.hbrBackground=(HBRUSH) GetStockObject (WHITE_BRUSH);
        wndClass.lpszMenuName=NULL;
        wndClass.lpszClassName=szClassName;
        
        /*窗口类注册*/
        if( RegisterClass(&wndClass) == 0 )
            return 0;//表示注册失败 
        
        /*创建窗体*/
        hwnd = CreateWindow(szClassName,
                            "禁止改变窗体大小",
                            dwStyle,//设置窗体样式 
                            300,
                            300,
                            300,
                            300,
                            NULL,
                            NULL,
                            hInstance,
                            NULL
                            );
         if(hwnd == 0)
         {
             MessageBox(NULL,"窗体创建失败!","失败",MB_OK);
             return 0;
        }
             
        /* 显示窗体 */
        ShowWindow(hwnd,nCmdShow);
        
        while (GetMessage (&message, NULL, 0, 0))
        {
            TranslateMessage(&message);//翻译 
            DispatchMessage(&message);//发送消息 
        } 
        
        return message.wParam;
    }
    
    /*消息处理*/
    LRESULT CALLBACK WindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
    {
        switch (message)                  
        {
            case WM_DESTROY:
                PostQuitMessage (0);       
                break;
            default:
                return DefWindowProc (hwnd, message, wParam, lParam);
        }
    
        return 0;
    } 

  • 相关阅读:
    spring boot 配置时区差别
    Java 中序列化与反序列化引发的思考?
    Http 状态码总结
    Springboot
    ConcurrentHashMap 实现缓存类
    C#基础(二)拆箱与装箱,循环与选择结构,枚举
    C#基础知识(一)自己总结的。。。
    贪吃蛇大作战双人版加强版完整代码加详细步骤,不懂问博主 啦啦啦。
    C#数组随机生成四个随机数
    C#添加背景音乐
  • 原文地址:https://www.cnblogs.com/dzqdzq/p/3238484.html
Copyright © 2011-2022 走看看