找回密码
 加入
搜索
查看: 2217|回复: 6

[GUI管理] GUISetBkColor函数内的颜色从那里获取

  [复制链接]
发表于 2011-5-5 13:48:30 | 显示全部楼层 |阅读模式
GUISetBkColor函数内的颜色从那里获取??
因为颜色的代码太多了
AU3本身有没有提供一个RGB颜色对照表?
 楼主| 发表于 2011-5-5 13:49:50 | 显示全部楼层
虽然在网上找了下RGB的简易对照表,但是好象在AU3内跟找到的颜色对照表有差异!!!
发表于 2011-5-5 17:50:11 | 显示全部楼层
颜色方面我记得最少有两种类型的表示方法
你要看仔细了
发表于 2011-5-5 17:54:46 | 显示全部楼层
#include <Misc.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Opt('MustDeclareVars', 1)

_Color_Example()

Func _Color_Example()
        Local $GUI, $Btn_COLORREF, $Btn_BGR, $Btn_RGB, $iMemo

        $GUI = GUICreate("_ChooseColor() Example", 400, 300)
        $iMemo = GUICtrlCreateEdit("", 2, 55, 396, 200, BitOR($WS_VSCROLL, $WS_HSCROLL))
        GUICtrlSetFont($iMemo, 10, 400, 0, "Courier New")
        $Btn_COLORREF = GUICtrlCreateButton("COLORREF", 70, 10, 80, 40)
        $Btn_BGR = GUICtrlCreateButton("BGR", 160, 10, 80, 40)
        $Btn_RGB = GUICtrlCreateButton("RGB", 250, 10, 80, 40)
        GUISetState()

        While 1
                Switch GUIGetMsg()
                        Case $GUI_EVENT_CLOSE
                                ExitLoop
                        Case $Btn_COLORREF
                                _ShowChoice($GUI, $iMemo, 0, _ChooseColor(0, 255, 0, $GUI), "COLORREF color of your choice: ")
                        Case $Btn_BGR
                                _ShowChoice($GUI, $iMemo, 1, _ChooseColor(2, 0x808000, 1, $GUI), "BGR Hex color of your choice: ")
                        Case $Btn_RGB
                                _ShowChoice($GUI, $iMemo, 2, _ChooseColor(2, 0x0080C0, 2, $GUI), "RGB Hex color of your choice: ")
                EndSwitch
        WEnd
EndFunc   ;==>_Color_Example

Func _ShowChoice($GUI, $iMemo, $Type, $Choose, $sMessage)
        Local $cr
        If $Choose <> -1 Then
                
                If $Type = 0 Then ; convert COLORREF to RGB for this example
                        $cr = Hex($Choose, 6)
                        GUISetBkColor('0x' & StringMid($cr, 5, 2) & StringMid($cr, 3, 2) & StringMid($cr, 1, 2), $GUI)
                Else
                        GUISetBkColor($Choose, $GUI)
                EndIf
                
                GUICtrlSetData($iMemo, $sMessage & $Choose & @CRLF, 1)

        Else
                GUICtrlSetData($iMemo, "User Canceled Selction" & @CRLF, 1)
        EndIf
EndFunc   ;==>_ShowChoice

评分

参与人数 1金钱 +20 收起 理由
love5173 + 20 学习了

查看全部评分

发表于 2011-5-5 20:45:21 | 显示全部楼层
网上有那些16位的颜色码,加还是减掉0x后面的00好像可以,不过不清楚到底对应不对应的上
发表于 2011-5-5 20:53:43 | 显示全部楼层
很全面哦,偶菜鸟学到的都是0x后面改变改颜色。
发表于 2011-5-6 10:21:06 | 显示全部楼层
我一般都是用info自己抓取
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-16 09:26 , Processed in 0.087023 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表