Grid Conrol 3

  

サブメニュー


ここに紹介するプログラムは、WIN XP 2003/Windows 7 (32bits) - OS 環境でマイクロソフトのVisual Studio 2010 で作ったものです。

Windows XP/ Windows 7(32bits) での動作は確認済みですが…


使い勝手をあげる

標準のダイアログは、ReturnキーでOKボタンを押すと閉じてしまいます。

これでは、何かと都合が悪いしその他の機能も持たせたいのでこの辺を改良します。

まず、ClassWizardでダイアログの PreTranslateMessageをオーバーライドし以下のコードを追加します

 

/////////////////////////////////////
// リターンキーでクローズしないようにする
BOOL CWallDlg::PreTranslateMessage(MSG* pMsg)
{
   if(pMsg->message == WM_KEYDOWN){
       switch(pMsg->wParam) {
          case VK_RETURN:
             SetWallData( m_pt );  // Return キーを押した時の追加関数              return TRUE;
         case VK_RIGHT:
             MoveCurRight();    // Right矢印 キーを押した時の追加関数              return TRUE;
         case VK_LEFT:
             MoveCurLeft();     // Left矢印 キーを押した時の追加関数              return TRUE;
         case VK_DOWN:
             MoveCurDown();    // Down矢印 キーを押した時の追加関数              return TRUE;
         case VK_UP:
             MoveCurUp();     // Up矢印 キーを押した時の追加関数              return TRUE;
         default:
            br/eak;
        }
    }
   return CDialog::PreTranslateMessage(pMsg);

}

 

れでいろいろなキーに対応することになりました。

この追加機能を持たせる前に、Gridのカーソル移動について追加のコードを説明します。この部分が最も悩ませた部分です。

 

 

前ページに戻る

次のページへ


ページ先頭に戻る
最終更新日: 2020/02/04