Ver 1.07
色を選択するダイアログで色が変更されたときのコールバック関数を設定します。
書式
typedef void (* LP_COLORPROC)(CPColor *);
CP_BOOL AttachChangeEvent(LP_COLORPROC lpProc);
|
パラメータ
lpProc
「void xxxx(CPColor *)」型のstatic関数を指定します。
ここで指定したコールバック関数に対し、色が変更されたときのイベント処理を行います。
解説
色を選択するダイアログで、色が変更された場合のコールバック関数を設定します。
なお、コールバック関数は必ずstaticの静的関数である必要があります。
コールバックを解除する場合は「DetachChangeEvent( )」を呼び出してください。
例
ウィンドウ(ダイアログ)を生成して、その中に色表示領域を配置します。
CPWindow win;
CPColor col;
//色表示領域のチェンジイベントを受け取る
static void OnColorChange(CPColor *lpColor)
{
....
}
void main()
{
//ダイアログを生成する
win.Clear();
win.CreateNewDialog("TestDialog",120,120,200,200);
//色表示領域の位置・サイズを指定
col.SetBounds(10,10,20,20);
//色を指定
col.SetColor(CP_RGB(255,0,0));
//チェンジイベントのコールバック関数指定
col.AttachChangeEvent(OnColorChange);
//色表示領域をCPWindowに結びつける
win.Add(&col);
//ダイアログの表示・イベントループの開始
win.DoModal();
}
この例では、
色表示領域をクリックしたときに表示されるダイアログにおいて、色が変更された場合には「OnColorChange」関数が呼ばれます。
ビルド時に必要なファイル
ライブラリ
| :CPartsLib.lib (Macintoshの場合は、CPartsCW.a)
|
ヘッダ
| :CPColor.h
|
関連リンク
CPColorクラス
CPColor::DetachChangeEvent