代码之家  ›  专栏  ›  技术社区  ›  Paulo Santos

有没有关于shgetsyscolor的文档?

  •  0
  • Paulo Santos  · 技术社区  · 14 年前

    我正试图找到这个函数的任何引用,但没有找到任何内容。

    我只有一个模糊的 KB from Microsoft 引用一个程序员在对WindowsMobile6的一部分进行编码时发出boo boo boo的消息。 SHGetSysColor 但他却打电话来 GetSysColor 对于相同的规格,它给出了完全不同的颜色。

    从我能收集到的 获得颜色 从注册表中读取颜色值 HKEY_LOCAL_MACHINE\Software\Microsoft\Color\SHColor HKEY_LOCAL_MACHINE\Software\Microsoft\Color\DefSHColor 并根据索引返回颜色。

    在该注册表中,我对标准Win Mobile 6.5具有以下值

    "DefSHColor"=hex:\
      ff,00,00,00,00,00,00,00,dd,dd,dd,00,ff,ff,cc,00,ff,ff,ff,00,15,af,bc,00,15,\
      af,bc,00,c9,e7,e9,00,14,9c,a7,00,ff,ff,ff,00,14,9c,a7,00,14,9c,a7,00,14,9c,\
      a7,00,15,af,bc,00,14,9c,a7,00,ff,ff,ff,00,c9,e7,e9,00,37,c7,d3,00,37,c7,d3,\
      00,ff,ff,ff,00,00,b7,c9,00,14,9c,a7,00,ff,ff,ff,00,15,af,bc,00,84,84,c3,00,\
      15,af,bc,00,14,9c,a7,00,ff,ff,ff,00,ff,ff,ff,00,00,00,00,00,ff,ff,ff,00,00,\
      00,00,00,ff,ff,ff,00,2e,44,4f,00,00,14,3c,00,00,f0,ff,00,ff,ff,ff,00,c9,e7,\
      e9,00,14,9c,a7,00,ff,ff,ff,00,14,9c,a7,00
    

    我意识到每四个字节代表一种不同的颜色(rr,gg,bb,a a——这里假设的a a,因为这里的每种颜色都有a a字节 00 这意味着它是纯色)。

    我不能确定的是每个索引的含义,因为其中有41种不同的颜色。

    谷歌搜索 皮肤颜色 在“只给我7场比赛”中,其中两场是微软的知识库(一场是英语,另一场是法语),一场来自俄罗斯的网站(我没有读过),还有两场来自freepascal.org,一场来自koders.com,描述的是 commctl.def 文件。

    我去了 commctl.h 试图看看我是否能找到这个函数的引用Tom,却一无所获。

    没有对msdn的搜索,无论是从google、bing还是默认的msdn搜索,都没有给出任何结果。

    那么,有人知道我们在讨论什么索引吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   Paulo Santos    14 年前

    我能找到关于 SHColor 注册表项感谢 Russian site .

    此信息以前在msdn上,但现在不再可用。

    颜色如下:

    Color#  Description
    
       0    COLOR_ALERT
            Obsolete.
    
       1    COLOR_ACCENTTEXT
            Obsolete.
    
       2    COLOR_CALOFFHOURS
            Obsolete.
    
       3    COLOR_CALONHOURS
            Obsolete.
    
       4    COLOR_TODAYTEXT
            Today screen text color.
    
       5    COLOR_STARTICONBACKGROUND
            Base color for title bar and soft keys
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
       6    COLOR_TODAYSEPARATOR
            Today screen separator line color.
    
       7    COLOR_TODAYMENU
            Today screen menubar background color.
    
       8    COLOR_NAVBAR
            Color of title bar
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
       9    COLOR_NAVBARTEXT
            Color of title bar text on
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      10    COLOR_NAVBARHILITE
            Obsolete.
    
      11    COLOR_NOTIFTRAY
            Notification tray background color
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      12    COLOR_NOTIFTRAYHILITE
            Background of highlighted icon in the notification tray
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      13    COLOR_BUBBLECAPTION
            Left color of bubble caption background gradient on
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      14    COLOR_GRADIENTBUBBLECAPTION
            Right color of bubble caption background gradient
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      15    COLOR_INTGRADLEFT
            Left color of a gradient listview background, for the interlaced rows.
    
      16    COLOR_INTGRADRIGHT
            Right color of a gradient listview background, for the interlaced rows.
    
      17    COLOR_HIGHGRADLEFT
            Currently not used.
    
      18    COLOR_HIGHGRADRIGHT
            Currently not used.
    
      19    COLOR_PHONEDIALERTEXT
            Text color of the text in the Phone dialpad buttons.
    
      20    COLOR_TRAYGRADLEFT
            Base color for title bar and soft keys
            Obs.:Windows Mobile 6 Standard only.
    
      21    COLOR_TRAYGRADRIGHT
            Right color of tray
            Obs.:Windows Mobile 6 Standard only.
    
      22    COLOR_TRAYTEXT
            Tray text color
            Obs.:Windows Mobile 6 Standard only.
    
      23    COLOR_TRAYBKGND
            Tray background color, if not a gradient
            Obs.:Windows Mobile 6 Standard only.
    
      24    COLOR_DIALPADBKGND
            Currently not used.
    
      25    COLOR_CRITGRADLEFT
            Left color of a critical bubble caption gradient
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      26    COLOR_CRITGRADRIGHT
            Right color of a critical bubble caption gradient
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      27    COLOR_BUBBLETITLE
            Text color of a bubble caption
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      28    COLOR_CRITBUBBLETITLE
            Text color of a critical bubble caption
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      29    COLOR_ALERTTITLE
            Alert title text color. An alert is a full screen message box
            Obs.:Windows Mobile 6 Standard only.
    
      30    COLOR_ALERTWINDOW
            Background color of a listview in alert. Also used for volume alert slider bar
            Obs.:Windows Mobile 6 Standard only.
    
      31    COLOR_ALERTRULE
            Color of alert horizontal separator line. An alert is a full screen message box
            Obs.:Windows Mobile 6 Standard only.
    
      32    COLOR_HOMETEXT
            Home Screen text
            Obs.:Windows Mobile 6 Standard only.
    
      33    COLOR_HOMERULE
            Home Screen horizontal separator line
            Obs.:Windows Mobile 6 Standard only.
    
      34    COLOR_HOMEHIGHLIGHT
            Home Screen background color of highlighted text
            Obs.:Windows Mobile 6 Standard only.
    
      35    COLOR_HOMEHIGHLIGHTTEXT
            Home Screen highlighted text
            Obs.:Windows Mobile 6 Standard only.
    
      36    COLOR_GRADLEFT
            Left color of a gradient listview background, used to draw alternating lines together with COLOR_INTGRADLEFT and COLOR_INTGRADRIGHT.
    
      37    COLOR_GRADRIGHT
            Right color of a gradient listview background, used to draw alternating lines together with COLOR_INTGRADLEFT and COLOR_INTGRADRIGHT.
    
      38    COLOR_STARTMENU
            Start Menu background color when there is no background bitmap
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.
    
      39    COLOR_STARTMENUTEXT
            Start Menu text.
    
      40    COLOR_TAPANDHOLD
            Tap and Hold
            Obs.:Windows Mobile 6 Professional and Windows Mobile 6 Classic.