![]() |
マウスのボタンを判定するにはイベントプロシージャ等で、押されているマウスのボタンを判定したい場合があります。 下記の例のようにグローバルマウスインスタンスからの情報取得によって、 現在押されているマウスのボタンが判定することガできます。#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.00 For Use with Wide Studio Release 3.00, Summper 2002
|