zoukankan      html  css  js  c++  java
  • AutoHotkey调用系统调色板获取颜色

    写脚本有时候需要选择颜色,在AutoHotkey论坛上看到了 ChooseColor 函数,由于原来的算法有点麻烦,我稍微调整了下分享出来。

    并增加了 argb 的选项(不过生成的都是完全不透明的颜色,有需求的可自行调整)

    ; https://docs.microsoft.com/en-us/windows/win32/api/commdlg/ns-commdlg-choosecolora-r1
    ;系统的调色板选择颜色
    selectColor(bARGB:=false, bRGB:=true) {
        VarSetCapacity(CC, 36+64, 0)
        NumPut(36, CC)
        NumPut(hOwner:=0, CC, A_PtrSize)
        NumPut(clDefault:=0, CC, A_PtrSize * 3)
        NumPut(&CC+36, CC, A_PtrSize * 4) ; COLORREF *lpCustColors
        NumPut(flags:=3, CC, A_PtrSize * 5)
        DllCall("comdlg32ChooseColorA", "Str",CC)
        if bRGB {
            nBGR := numget(CC, A_PtrSize * 3)
            cl := (nBGR & 0xFF) << 16 | nBGR & 0x0000FF00 | nBGR >> 16
        } else 
            cl := numget(CC, A_PtrSize * 3)
        return bARGB ? (0xff000000 | cl) : cl ;转成 argb,透明度为ff(完全不透明),可自行修改
    }
  • 相关阅读:
    [USACO5.1]二维凸包模板
    HTML 5 Web 存储
    计算两个坐标点的距离(高德or百度)
    Cache的一些总结
    PowerDesigner最基础的使用方法
    MongoDB安装
    MangoDB CSharp Driver
    Linq语法详细
    where用法
    .Net下二进制形式的文件存储与读取
  • 原文地址:https://www.cnblogs.com/hyaray/p/14191037.html
Copyright © 2011-2022 走看看