CColorDialogで表示される48色の基本色って、
どこかでシステム値として決められているのでしょうか?
CColorDialogを表示する際、
コンストラクタで指定する最初の色がこの48色以外だった場合は、
いきなりCC_FULLOPEN状態で表示したいと思っているのですが、
どこを見て判定すればよいのか悩んでいます。
それとも、CColorDialogの設定だけでそのような動作も可能でしょうか?
暇になったので書き出してみた。
あっている保障はないです。
8080ff 80ffff 80ff80 80ff00 ffff80 ff8000 c080ff ff80ff
0000ff 00ffff 00ff80 40ff00 ffff00 c08000 c08080 ff00ff
404080 4080ff 00ff00 808000 804000 ff8080 400080 8000ff
000080 0080ff 008000 408000 ff0000 a00000 800080 ff0080
000040 004080 004000 404000 800000 400000 400040 800040
000000 008080 408080 808080 808040 c0c0c0 400040 ffffff
400040が2つあるようで、48色じゃねーやんけとおもったりして。
(そこだけは2000とXpで確認してみた。)
調べていただきありがとうございます。
ただ、この48色の値がユーザ環境によって異なることはあるのか、
それとも完全に固定なのかというのが不明なのです。
自分でこの48個の値をソース内に直接書いて比較してしまってよいのか、
それとも48個の値をシステムから聞く方法があるのか、
もしくはCColorDialogが勝手にCC_FULLOPENに切り替えてくれるモードがあるのか、
そのへんのことをご存じであれば教えていただけませんでしょうか。
そのままの回答になってしまいそう。
上記URLを参照して下さい。
サイト情報ありがとうございます。
ただこの情報って、システムカラーのことではないでしょうか?
システムカラーの値が入るのかなとも思いましたが、48種類もありませんし…。