zoukankan      html  css  js  c++  java
  • 合并两个ICON

          记得 Windows 里的快捷方式么,将你的程序拖到桌面上建立一个快捷方式,不论程序用的是什么IconMicrosoft都会在Icon左下脚加上一个小小的箭头,很好玩是不是?下面我提供两种方式来实现这种效果:

    1. 直接利用HICON CreateIconIndirect ( PICONINFO piconinfo );

    HICON CombineIcon(
                     HICON hBaseIcon, 
    //底层Icon,yi:xFc(`WDM教育N=yz"放在下面的那个

                     HICON hTopIcon, 
    //上层Icon,盖在上面的那个
                     

                     
    int iWidth, //Icon的宽度

                     
    int iHeight, //Icon的高度

                     COLORREF colorkey
    //透明色

                     )
    {
        HDC hdc 
    = GetDC(NULL);

        //建立一个兼容DC,用于作图

        HDC memdc 
    = CreateCompatibleDC(hdc);

         //注意,这里的参数dc不能为兼容dc,否则就是单色位图

        HBITMAP membmp 
    = (HBITMAP)CreateCompatibleBitmap(hdc, 3232);

        HBITMAP oldbmp 
    = (HBITMAP)SelectObject(memdc, membmp);

        HBRUSH br 
    = (HBRUSH)GetStockObject(colorkey);    
        
        RECT rect;
        rect.left 
    = 0;
        rect.right 
    = 32;
        rect.top 
    = 0;
        rect.bottom 
    = 32;

        SelectObject(memdc, br);

        //填充透明色

        FillRect(dc, 
    &rcct, br); 


        DrawIconEx(memdc, 
    00, hBaseIcon, iWidth, iHeight0, NULL, DI_NORMAL);  

        DrawIconEx(memdc, 
    00, hTopIcon , iWidth, iHeight0, NULL, DI_NORMAL);
       
         //保持图片

        SelectObject(memdc, oldbmp);

        ICONINFO info;

        info.fIcon 
    = true;
        info.hbmMask 
    = CreateBitmap(323211, NULL);
        info.hbmColor 
    = membmp;

        return
     CreateIconIndirect(&info);


    }


    2. 利用ImageList.ExtractIcon 将bitmap 转化成Icon



  • 相关阅读:
    微服务实战——微服务架构选型SpringCloud / Dubbo / K8S比较(一)
    微服务实战——Spring Cloud + Zuul Gateway + Eureka集成
    微服务实战——SpringCloud与Feign集成
    微服务实战——高可用的SpringCloudConfig
    制作自己的网站第二步***在Linux上装上需要的软件以及部署项目配置**
    Eclipse打war包方法以及Eclipse移植项目时JDK版本不匹配Project facet Java version 1.7 is not supported
    Eclipse移植项目时JDK版本不匹配Project facet Java version 1.7 is not supported
    个人网站开发***云服务器+Linux+域名***
    SaaS 系统架构,Spring Boot 动态数据源实现!
    Spring Security 是如何在 Servlet 应用中执行的?
  • 原文地址:https://www.cnblogs.com/Jianchidaodi/p/560776.html
Copyright © 2011-2022 走看看