directx9学習(マウスクリック)

  • マウスのトリガと位置の取得(MsgProc関数内)

  switch( msg )
  {
    // マウスクリック時
    case WM_LBUTTONDOWN:
      mx1 = LOWORD(lParam);
      my1 = HIWORD(lParam);
      break;

    // マウス移動時
    case WM_MOUSEMOVE:
      mx2 = LOWORD(lParam);
      my2 = HIWORD(lParam);
      break;

    case WM_DESTROY:
      Cleanup();
      PostQuitMessage( 0 );

  • マウス位置表示(Render関数内)

      // Draw the mesh subset
      g_pMesh->DrawSubset( i );
    }

    char tmp[500];
    wsprintf(tmp, "click (%d, %d)", mx1, my1);
    sFont.Print(tmp, 0,0);
    wsprintf(tmp, "move (%d, %d)", mx2, my2);
    sFont.Print(tmp, 0,20);

    // End the scene
    g_pd3dDevice->EndScene();

  • 結果