目次に戻る
一覧ページに戻る
CPColor::ColorDialog
2002/01/31 update.
Ver 1.07
色選択ダイアログを表示します。

書式

  unsigned long ColorDialog(unsigned long col);

パラメータ


col
元の色をRGB値で指定します。
CP_RGB( r , g , b )」として指定してください。
r , g , b 共に、0から255までの整数値を指定します。
CP_RGBマクロは、これをunsigned long型に変換します。
戻り値
選択された色が返されます。
CP_RGBと同じ形式で格納されています。
もしも、ダイアログ上でキャンセルを選択した場合は、第一引数colで指定した色と同じ値が返されます。

解説


色を選択するダイアログを表示します。ダイアログのデザインは、Windows/Macintoshなどの環境に依存せず、C-Parts独自のものに統一されています。
このメソッドは、CPColorクラスを「CPColor::SetBounds」「CPColor:SetSize」などで位置・サイズ指定を行い、 CPWindow(またはCPGroup)に「Add」メソッドで結びつけなくても使用することができます。

ダイアログ上では、RGB/HSVのいずれかの方式で色を選択することができます。

RGBでの色選択



ダイアログ左上で「RGB」をマウスクリックすることにより、RGB(赤・緑・青成分)で色を選択するモードになります。
赤・緑・青のスライダーを移動させることにより、各RGB成分を0-255の値に変化させることができます。
また、HSV値(色相・明度・彩度)の値も同時に表示しています。
さらに、各エディットボックスでの入力によっても、色を変更することができます。
HSVでの色選択



ダイアログ左上で「HSV」をマウスクリックすることにより、HSV(色相・明度・彩度)で色を選択するモードになります。
H(色相)の範囲は0-359(円の角度に相当)、
S(明度)の範囲は0-100(%)、
V(彩度)の範囲は0-100(%)をとります。
カラーサークルでは、HとSの関係を表し、円の角度がHとなり、円の中心に行くにしたがってSが小さくなります。
その下のスライダーは、Vを表し、右に行くほどVが大きくなります。
各エディットボックスでの入力によっても、色を変更することができます。





カラーダイアログを表示します。はじめの色は赤(RGB=255,0,0)を指定しています。

CPColor cpCol;
unsigned long rCol;
int rr,gg,bb;

rCol=cpCol.ColorDialog(CP_RGB(255,0,0));
rr=CP_RGB_RED(rCol);
gg=CP_RGB_GREEN(rCol);
bb=CP_RGB_BLUE(rCol);

この例では、(rr,gg,bb)に色選択ダイアログで指定された色が入ります。


ビルド時に必要なファイル


ライブラリ :CPartsLib.lib (Macintoshの場合は、CPartsCW.a)
ヘッダ :CPColor.h


関連リンク


CPColorクラス