初日 最新 目次 MAIL HOME


*-- To Tell The Truth --*
Cruz
MAIL
HOME

My追加

2002年03月05日(火)
謎プロパティーシート

形は、それらしくできました。

【適用】ボタンは、使っていません。
【OK】と【キャンセル】の処理を、各ページ(各ダイアログプロシージャー)に入れました。


 case WM_NOTIFY:
  switch(((NMHDR *)lParam)->code){
   case PSN_APPLY:  // OK
    T_Log.TraceLog(T_LEVEL3, __FILE__, __LINE__, "ページ【1】OK終了\n");
    // 画面を閉じる
    SetWindowLong(hDlgWnd, DWL_MSGRESULT, FALSE);
    break;

   case PSN_RESET:  // キャンセル
    T_Log.TraceLog(T_LEVEL3, __FILE__, __LINE__, "ページ【1】キャンセル\n");
    // 画面を閉じない
    SetWindowLong(hDlgWnd, DWL_MSGRESULT, TRUE);
    break;

   default:
    return FALSE;
  }



こんな具合のを・・・。




ページは、都合3ページあります。

2ページ目をアクティブにした状態で、【OK】又は【キャンセル】ボタンを押下すと、

1ページ目のWM_NOTIFYが

実行される



のですけど、何故なんでしょう?



ページのフォーカスがおかしくなっているようなんですけど、何か定義の

忘れもの



があるだけのような気が・・・。