HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2020
0228
ゆうやん(元Yuuki)マウスのサイドボタンの検出について(その2)3解決


ゆうやん(元Yuuki)

リンク

2020/2/28(Fri) 16:14:36|NO.89574

HSPでサイドボタンの検出について教えてください。
oncmdを使えばいいと聞きましたが、ページが削除されてしまったため、忘れていたのでもう一度お願いします。
http://hsp.tv/play/pforum.php?mode=pastwch&num=79925



この記事に返信する


あらや

リンク

2020/2/28(Fri) 18:57:14|NO.89576

oncmdだとこんな感じでしょうか。

// メッセージ #define WM_XBUTTONDOWN 0x020B // Xボタン押し下げ #define WM_XBUTTONUP 0x020C // Xボタン押し上げ // wParam下位 #define MK_LBUTTON 0x0001 // マウス左ボタン #define MK_RBUTTON 0x0002 // マウス右ボタン #define MK_SHIFT 0x0004 // Shift #define MK_CONTROL 0x0008 // Ctrl #define MK_MBUTTON 0x0010 // マウス中央ボタン #define MK_XBUTTON1 0x0020 // Xボタン1 #define MK_XBUTTON2 0x0040 // Xボタン2 // wParam上位 #define XBUTTON1 0x0001 // Xボタン1 #define XBUTTON2 0x0002 // Xボタン2 oncmd goto *X_Key_Down, WM_XBUTTONDOWN; oncmd goto *X_Key_Up, WM_XBUTTONUP; stop; *X_Key_Down Xflag = 0; gosub *X_Button; stop; *X_Key_Up Xflag = 1; gosub *X_Button; stop; *X_Button wParamLow = wParam & 0xFFFF; // 同時に押されているキー wParamHigh = (wParam >> 16) & 0xFFFF; // 変化のあったXボタン lParamLow = lParam & 0xFFFF; // X座標 lParamHigh = (lParam >> 16) & 0xFFFF; // Y座標 if( Xflag == 0 ) { state = "押されました"; } else: if( Xflag == 1 ) { state = "放されました"; } buf = ""; if( wParamHigh == XBUTTON1 ) { buf = "マウスX1ボタンが"+state+"\n"; } else: if( wParamHigh == XBUTTON2 ) { buf = "マウスX2ボタンが"+state+"\n"; } buf += "座標: "+lParamLow+", "+lParamHigh+"\n"; buf += "同時に押されているキー:\n"; if( wParamLow & MK_LBUTTON ) { buf += "マウス左ボタン\n"; } if( wParamLow & MK_RBUTTON ) { buf += "マウス右ボタン\n"; } if( wParamLow & MK_SHIFT ) { buf += "Shiftキー\n"; } if( wParamLow & MK_CONTROL ) { buf += "Ctrlキー\n"; } if( wParamLow & MK_MBUTTON ) { buf += "マウス中央ボタン\n"; } if( wParamLow & MK_XBUTTON1 ) { buf += "マウスX1ボタン\n"; } if( wParamLow & MK_XBUTTON2 ) { buf += "マウスX2ボタン"; } // 描画 redraw 0; color 255, 255, 255: boxf; color 0, 0, 0: pos 0, 0; mes buf; redraw 1; return;



GENKI

リンク

2020/2/29(Sat) 16:11:23|NO.89591

stick命令などでは取得できないため少しハードルが高いのですが、oncmd命令を使用します。
http://spn.php.xdomain.jp/hsp_koneta3.htm#modore



ゆうやん

リンク

2020/3/1(Sun) 23:09:53|NO.89602

あらやさん、GENKIさん 回答ありがとうございます。

ググっても見つからなかったため、諦めてました。
今回はGENKIさんの方を参考にします。
ではでは。



ONION software Copyright 1997-2023(c) All rights reserved.