マウスのダブルクリックを検出する



マウスのダブルクリック(WM_LBUTTONDBLCLK:)を検出して Message Box で知らせます。

前田稔(Maeda Minoru)の超初心者のプログラム入門

プログラムの説明です。

  1. 新規プロジェクト(Dblclk)を作成して下さい。
    マウスのダブルクリックを検出するにはウインドウの style に CS_DBLCLKS を設定します。
    MyRegisterClass() 関数を表示して下さい。
    変更前の設定です。
        wcex.style          = CS_HREDRAW | CS_VREDRAW;
        
    次のように変更します。
        wcex.style          = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;
        
  2. InitInstance() を表示して下さい。
    大きな画面は必要ないので、ウインドウのサイズを小さくします。
        BOOL InitInstance( HINSTANCE hInstance, int nCmdShow )
        {
                :
            hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
                   CW_USEDEFAULT, CW_USEDEFAULT, 200, 150, NULL, NULL, hInstance, NULL);
        
  3. CALLBACK WndProc() を表示して下さい。
    マウスのダブルクリックを検出する WM_LBUTTONDBLCLK: を追加します。
    ダブルクリックを検出すると MessageBox で知らせます。
        switch( message ) 
        {
            case WM_LBUTTONDBLCLK:
                MessageBox(hWnd,"Double Cleck されました","Message Box",MB_OK);
                break;
        
  4. [デバッグ][デバッグなしで開始]を選択して、ビルドに続いて実行を行います。
    マウスを左ダブルクリックして MessageBox が表示されることを確かめて下さい。

超初心者のプログラム入門(Win32API C++)