zoukankan      html  css  js  c++  java
  • 【Demo 0036】Window层窗体

    层窗体 – 这个概念和photoshop的图层概念是一样的, 每一层上可以用许多UI或控件, 层与层之间可以实现透明以及部分切除.

    一、代码演示

       

    SetWindowLongPtr(hWnd, GWL_EXSTYLE, WS_EX_LAYERED | GetWindowLongPtr(hWnd, GWL_EXSTYLE));
    SetLayeredWindowAttributes(hWnd, RGB(0, 0, 0), lpsi.nPos, LWA_ALPHA);

        

    SetLayeredWindowAttributes(hWnd, RGB(255, 0, 0), nPos, LWA_ALPHA|LWA_COLORKEY);

    二、要点学习

    1.  窗体必须设置WM_EX_LAYERED属性

    2.  BOOL SetLayeredWindowAttributes(HWND hwnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags )

        功能:  设置层窗体的属性

        hWnd     -- 窗体的句柄,

    crKey      -- 将被透明的颜色

        bAlpha     -- 透明度,取值范围是(0,255),其中0代表全透明,255代表不透明。

       dwFlags   -- 透明方式,可以取两个值:

    当取值为LWA_ALPHA时,crKey参数无效,bAlpha参数有效;

    当取值为LWA_COLORKEY时,窗体中的所有颜色为crKey的地方将变为透明,bAlpha参数无效。

          当取值为LWA_ALPHA 和 LWA_COLORKEY时, 窗体中所有颜色为crKey的地方将变为透明,其他位置以bAlpha度透明

    三、测试效果

         image  image

                                未colorkey及alpha处理前                                                        colorKey(255,0,0)及alpha(216)后

    演示代码

  • 相关阅读:
    实验四 决策树算法及应用
    实验三 朴素贝叶斯算法及应用
    实验二 K-近邻算法及应用
    实验一 感知器及其应用
    实验三 面向对象分析与设计
    实验二 结构化分析与设计
    实验一 软件开发文档与工具的安装与使用
    ATM管理系统
    活动图与流程图的区别与联系
    四则运算题目生成程序
  • 原文地址:https://www.cnblogs.com/ztercel/p/2158957.html
Copyright © 2011-2022 走看看