ウィンドウデフォルト色のRGB値は?

[戻る]
カノン 2005/01/11(火) 21:22:37
お世話になります。VC6(SP4)WIN2000ユーザーです。
ピクチャーボックスを塗りつぶしてクリアーする処理で使いたいのですが
Windows98〜2000などの銀色か薄いグレーとでも言えばいいのでしょうか?
ウィンドウ枠(アプリのタイトルバーのすぐ下の、ファイル、編集、表示
などの文字の背景)デフォルト色はRGB値で表せば、どういう数値にすれば
同じ色になりますでしょうか?今モニターは16ビットハイカラーですが・・・
一般的な銀色or薄いグレーRGB(192,192,192)などとは少し違うんですよね。
C++自体の質問でもなくてすいませんが、わかりますでしょうか?
どうぞよろしくお願いします。

瀬戸っぷ [E-Mail] 2005/01/11(火) 21:47:04
> Windows98〜2000などの銀色か薄いグレーとでも言えばいいのでしょうか?
> ウィンドウ枠(アプリのタイトルバーのすぐ下の、ファイル、編集、表示
> などの文字の背景)デフォルト色はRGB値で表せば、どういう数値にすれば
> 同じ色になりますでしょうか?今モニターは16ビットハイカラーですが・・・

GetSysColor()で取得しましょう。
COLOR_3DFACEかCOLOR_3DLIGHTでしょうか?

画面のプロパティのデザインで変更できますから、
RGB値をコードコーティングするとおかしくなる場合がありますよ。

カノン 2005/01/11(火) 22:00:02
[[解決]]
瀬戸っぷ様

ご返答ありがとうございました。
おかげさまで下記のようにしましたら同じ色でクリアーできました。
レベルの低い質問してしまいました。(苦笑)

    DWORD color;

    color = ::GetSysColor( COLOR_3DFACE );    // or COLOR_BTNFACE ?
    myDC.FillSolidRect(myRECT, color);

古いスレッドには追加発言できません。