投稿時間:2006/06/04(Sun) 18:49 投稿者名:べた
Eメール:
URL :
タイトル:ボタン色「&H8000000F」をRGB値に変換するには?
ボタン色「&H8000000F」をRGB値に変換するには?
VB6で、フォームのボタン色はプロパティで&H8000000Fとなっていますが、 これをRGB値に変換したいのですが、上手く値を求めることができません。 どうすればよいのでしょうか。 また、10進への変換もあるのですが、求めた16進からどのよにすれば10進 を求められますか。
1. Command1.BackColor = &H8000000F s = Hex(Command1.BackColor) s = String(8 - Len(s), "0") & s R = "&H" & Mid(s, 7, 2) G = "&H" & Mid(s, 5, 2) B = "&H" & Mid(s, 3, 2) Debug.Print s Debug.Print R; G; B
この場合、動くことには動いたのですが、求められた値が正しくない。 「0F0000」で、実際調べてみる黒色でした。
ためしに、緑「&HCC00&」でやってみると、 「00CC00」と正しくなります。
2. s = Hex(Command1.BackColor) s = String(8 - Len(s), "0") & s c = Mid(s, 7, 2) R = c And &HFF c = Mid(s, 5, 2) G = (c And &HFF00&) \ &H100 c = Mid(s, 3, 2) B = (c And &HFF0000) \ &H10000 Debug.Print s Debug.Print R; G; B
この場合、「c = Mid(s, 7, 2)」で型が異なるとエラーになって しまいます。
|