• 3)修改窗口左上角的小图标


    1)结果展示:

          

    2)之前我给的那个        wndclass.hIconSm  为NULL  现在  我改为是:

          

    1 wndclass.hIconSm=::LoadIcon(hIstance,MAKEINTRESOURCE(IDI_ICON2));;//窗口左上的图标

    并且,按照  弄光标或者图标的顺序 又画了一个  小的图标:

    3)注意有关步骤:

        

        

    4)整体代码展示:

        

     1 #include<Windows.h>
     2 #include"resource.h"
     3 //这个叫  窗口消息处理函数
     4 LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
     5 {
     6     switch(uMsg)
     7     {
     8     case WM_CLOSE://点那个×,窗口关闭
     9         ::PostQuitMessage(0);//消息推出
    10         break;
    11     }
    12     return ::DefWindowProc( hWnd, uMsg, wParam, lParam);
    13 }
    14 
    15 
    16 int CALLBACK WinMain(HINSTANCE hIstance,
    17                      HINSTANCE hPreInstance,
    18                      LPSTR pCmdLine,
    19                      int nCmdShow)
    20 {
    21             
    22     HBRUSH hBrush=::CreateSolidBrush(RGB(0,0,255));
    23             
    24     
    25     //1.设计---->就是给WNDCLASSEX结构体初始化(结构体有12个)
    26             WNDCLASSEX wndclass;
    27             wndclass.cbClsExtra=0;
    28             wndclass.cbWndExtra=0;//这两个是确定是否要分配额外的空间
    29             wndclass.cbSize=sizeof(WNDCLASSEX);
    30             wndclass.hbrBackground=hBrush;
    31             wndclass.hCursor=::LoadCursor(hIstance,MAKEINTRESOURCE (IDC_CURSOR1));//光标
    32             //因为上面的那个LoadCUrsor是需要字符串,但是那个IDC_CURSOR1是一个整型数字,所以  需要用那个宏给转定义一下
    33             wndclass.hIcon=::LoadIcon(hIstance,MAKEINTRESOURCE(IDI_ICON1));//窗口图标
    34             wndclass.hIconSm=::LoadIcon(hIstance,MAKEINTRESOURCE(IDI_ICON2));;//窗口左上的图标
    35             wndclass.hInstance=hIstance;
    36             wndclass.lpfnWndProc=WndProc;
    37             wndclass.lpszClassName="wangchao";
    38             wndclass.lpszMenuName=NULL;
    39             wndclass.style=CS_HREDRAW|CS_VREDRAW;
    40 
    41     //2.注册(将上面的那个窗口给注册上)
    42             if(::RegisterClassEx(&wndclass)==FALSE)
    43             {
    44                 ::MessageBox(NULL,"dhsakfljadsf","提示",MB_OK);
    45                 
    46                 return 0;
    47             }
    48     //3.创建
    49                     
    50             HWND hWnd=::CreateWindow("wangchao","xiao_hua",WS_OVERLAPPEDWINDOW,100,0,500,500,NULL,NULL,hIstance,NULL);
    51             
    52         if(hWnd==NULL)
    53         {
    54             ::MessageBox(NULL,"创建失败","提示",MB_OK);
    55             return 0;
    56         }
    57     //4.显式
    58             //这个SW_SHOW就是一个宏,它就是ShowWindow-->SW,SW_SHOW显式,SW_HIDE隐藏
    59             //第一个变量是显式哪一个窗口,就是上面的我们创建的那个hWnd
    60         ::ShowWindow(hWnd,SW_SHOW);
    61     //5.消息循环
    62         //定义一个消息句柄
    63             MSG msg;
    64             //函数的第一个变量是 取到的什么消息,第二个是这个消息是来自哪一个窗口(如果给0,说的是所有窗口的消息)
    65             //最后那个是消息的范围,0,0是所有的范围,要是写10  20  就是取第10个到第20个消息
    66             while(::GetMessage(&msg,0,0,0))
    67         {
    68             //第一步先翻译
    69             ::TranslateMessage(&msg);
    70             //第二部分发
    71             ::DispatchMessageA(&msg);
    72 
    73         }
    74 
    75 
    76     ::DeleteObject(hBrush);
    77 }

    5)文件框图展示:

        

  • 相关阅读:
    10 个超酷的加载中的 Gif 动画
    国内CDN公共库
    http://www.cnbeta.com/articles/306769.htm
    玩转WIN7的MKLINK
    盘点国内网站常用的一些 CDN 公共库加速服务
    15 个很棒的 Bootstrap UI 界面编辑器
    2014 年 20 款最好的 CSS 工具
    Web 开发中 20 个很有用的 CSS 库
    20+ 个很有用的 jQuery 的 Google 地图插件
    12 个 Web 设计师必备的 Bootstrap 工具
  • 原文地址:https://www.cnblogs.com/xiaoyoucai/p/8303560.html
Copyright © 2020-2023  润新知