目次に戻る
一覧ページに戻る
CPColor::AttachChangeEvent
2002/01/31 update.
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