目次に戻る
一覧ページに戻る
CPWindow::AttachTimerEvent
2001/12/29 update.
100msごとに定期的に呼ばれるコールバック関数を設定します。

書式

  typedef void (* LP_TIMERPROC)(CPWindow *);
  void AttachTimerEvent(LP_TIMERPROC TimerEvent);

パラメータ


TimerEvent
「void xxxx(CPWindow *)」型のstatic関数を指定します。
コールバック関数の第一引数に、CPWindowクラスのポインタが入ります。

解説


100ms(1/10秒)ごとに定期的に指定のコールバック関数を呼び出します。
一定時間ごとにアニメーションをさせたりする場合に使用できます。
なお、コールバック関数は必ずstaticの静的関数である必要があります。

コールバックを解除する場合は「DetachTimerEvent( )」を呼び出してください。





ウィンドウ(ダイアログ)を生成して、その中でコールバック関数よりタイマーイベントを取得します。

CPWindow win;

//タイマーイベントを受け取る
static void OnTimerEvent(CPWindow *lpWin)
{
    ....
}

void main()
{
    //ダイアログを生成する
    win.Clear();
    win.CreateNewDialog("TestDialog",120,120,120,120);

    //タイマーイベントのコールバック関数指定
    win.AttachTimerEvent(OnTimerEvent);

    //ダイアログの表示・イベントループの開始
    win.DoModal();
}

この例では、100msごとに「OnTimerEvent」関数が呼ばれます。


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


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


関連リンク


CPWindowクラス
CPWindow::DetachTimerEvent