WideStudio Programming Guide

| WideStudio Programming Guide | WideStudio Index 目次

> ## マウスのボタンを判定するには

> イベントプロシージャ等で、押されているマウスのボタンを判定したい場合が あります。下記の例のようにグローバルマウスインスタンスからの情報取得に よって、現在押されているマウスのボタンが判定することガできます。

>     #include <WScom.h>
>     #include <WSCfunctionList.h>
>     #include <WSCbase.h>
>     //----------------------------------------------------------
>     //Function for the event procedure
>     //----------------------------------------------------------
>     #include <WSDmouse.h> //A

>     void btn_ep(WSCbase* object){
>       long status = WSGIappMouse()->getStatus(); //B
>       if (status & WS_MOUSE_BTN1){ //C
>         //左マウスボタンが押されている場合の処理
>       }
>       if (status & WS_MOUSE_BTN2){ //D
>         //中マウスボタンが押されている場合の処理
>       }
>       if (status & WS_MOUSE_BTN3){ //E
>         //右マウスボタンが押されている場合の処理
>       }

>     }
>     static WSCfunctionRegister  op("exit_ep",(void*)exit_ep);

> まず、A で、グローバルマウスインスタンスにアクセスするため、WSDmouse.h を include しておきます。B で、マウスの押下状態を取得します。C,D,E で、 それぞれ、調べたいボタンの判定を行います。== (比較)ではなく、& (アン ド)で判定するのは、複数のボタンが同時に押されている場合があるからです。

Document Release 3.70 for WideStudio ver 3.70, Feb 2004

WideStudio documents index | 目次

Copyright(C) T. Hirabayashi, 2000-2004 | Last modified: Feb 25, 2004