お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2008-08-22 14:16:06

syosinnsya
メンバ
登録日: 2008-06-20

[解決済み]xevでのマウスボタンの調べ方

http://forum.ubuntulinux.jp/viewtopic.php?id=1244
で質問したのですが、途中でわからなくなり、レスがつかないのでこちらに専用トピックを立てさせていただきます。

マウスのマッピングをするためにxevでkeycodeを調べたのですが、
xevでevent testerの窓の中にマウスを持っていくとそれだけでも、端末にいろいろ表示されて、調べたいボタンを数回押した後、
event testerの窓を非アクティブにするために、マウスを外に持っていくと、また端末にそのマウスの移動の情報が表示されます。

そのためどれが調べたいマウスのkeycodeなのかわかりません。
それに端末に表示されたログを検索してもkeycodeが見つかりません。

以下にログを載せます。

どなたかどうすればいいか教えてくださいませんか?
解答お願いします。

コード:

EnterNotify event, serial 31, synthetic NO, window 0x3e00001,
    root 0x13b, subw 0x0, time 8778881, (35,9), root:(1290,500),
    mode NotifyNormal, detail NotifyInferior, same_screen YES,
    focus YES, state 0

KeymapNotify event, serial 31, synthetic NO, window 0x0,
    keys:  59  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

MotionNotify event, serial 31, synthetic NO, window 0x3e00001,
    root 0x13b, subw 0x0, time 8778883, (35,6), root:(1290,497),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 31, synthetic NO, window 0x3e00001,
    root 0x13b, subw 0x0, time 8778885, (35,4), root:(1290,495),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 31, synthetic NO, window 0x3e00001,
    root 0x13b, subw 0x0, time 8778887, (35,2), root:(1290,493),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 31, synthetic NO, window 0x3e00001,
    root 0x13b, subw 0x0, time 8778889, (35,-1), root:(1290,490),
    state 0x0, is_hint 0, same_screen YES

LeaveNotify event, serial 31, synthetic NO, window 0x3e00001,
    root 0x13b, subw 0x0, time 8778891, (34,-3), root:(1289,488),
    mode NotifyNormal, detail NotifyNonlinear, same_screen YES,
    focus YES, state 0

FocusOut event, serial 31, synthetic NO, window 0x3e00001,
    mode NotifyNormal, detail NotifyNonlinear

最後の編集者: syosinnsya (2008-09-04 00:50:02)

オフライン

 

#2 2008-08-22 14:46:01

hito
管理者
登録日: 2007-03-18

Re: [解決済み]xevでのマウスボタンの調べ方

マウスから手を離した状態で調べたいキーの入力をして、そのあとでAlt+Tabで
ウインドウを切り替えると楽です。

どうしても分からなければ、それっぽい部分を貼り付けて聞いてみてもいいかと思います。

オフライン

 

#3 2008-08-23 00:44:50

vine_user
メンバ
From: Tokyo
登録日: 2006-11-15

Re: [解決済み]xevでのマウスボタンの調べ方

event testerの窓をアクティブにした状態で,マウスから手を離し,確認したいキーを押すと,下記のような記述が表示されます。

コード:

KeyRelease event, serial 30, synthetic NO, window 0x3400001,
    root 0x56, subw 0x0, time 2483303, (601,292), root:(602,339),
    state 0x0, keycode 68 (keysym 0xffbf, F2), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

これは「F2キー」の例ですが,3行目にkeycodeが表示されています。
この場合,「F2キー」のキーコードは「68」です。

また,本題のマウスのボタン番号は,event testerの窓の上にマウスポインタを置き,マウスを動かさないようにして,確認したいボタンを押せば,下記のような記述が表示されます。

コード:

ButtonRelease event, serial 30, synthetic NO, window 0x3400001,
    root 0x56, subw 0x0, time 3224260, (137,99), root:(138,146),
    state 0x400, button 3, same_screen YES

この場合,3行目にbutton 3とあるので,「押したボタンの番号」(keycodeとは呼ばないと思うので)は「3」です。

マウスを動かさないというところがポイントです。
あとは,下記のサイトを参考にカスタマイズしてみて下さい。

5ボタンマウスにキーを割り当てる
btnxでマウスの有効活用

btnxについては,使ったことがないので,よくわかりませんけど。

最後の編集者: vine_user (2008-08-23 00:54:51)

オフライン

 

#4 2008-08-23 12:00:39

syosinnsya
メンバ
登録日: 2008-06-20

Re: [解決済み]xevでのマウスボタンの調べ方

ご指摘頂いたようにマウスを動かさないように注意し、alt+tabで切り替えてみたのですが、
出てきたログ内を検索してもbuttonなどのワードがひっかかりません。

以下がログです。

コード:

LeaveNotify event, serial 31, synthetic NO, window 0x3a00001,
    root 0x13b, subw 0x3a00002, time 739475, (30,26), root:(795,645),
    mode NotifyGrab, detail NotifyNonlinearVirtual, same_screen YES,
    focus YES, state 8

FocusOut event, serial 31, synthetic NO, window 0x3a00001,
    mode NotifyGrab, detail NotifyPointer

EnterNotify event, serial 31, synthetic NO, window 0x3a00001,
    root 0x13b, subw 0x3a00002, time 740883, (30,26), root:(795,645),
    mode NotifyUngrab, detail NotifyNonlinearVirtual, same_screen YES,
    focus YES, state 0

KeymapNotify event, serial 31, synthetic NO, window 0x0,
    keys:  59  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

FocusIn event, serial 31, synthetic NO, window 0x3a00001,
    mode NotifyUngrab, detail NotifyNonlinear

KeymapNotify event, serial 31, synthetic NO, window 0x0,
    keys:  59  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

LeaveNotify event, serial 31, synthetic NO, window 0x3a00001,
    root 0x13b, subw 0x3a00002, time 740885, (30,26), root:(795,645),
    mode NotifyNormal, detail NotifyNonlinearVirtual, same_screen YES,
    focus YES, state 0

FocusOut event, serial 31, synthetic NO, window 0x3a00001,
    mode NotifyNormal, detail NotifyNonlinear

最後の編集者: syosinnsya (2008-08-30 02:38:25)

オフライン

 

#5 2008-08-23 12:06:52

vine_user
メンバ
From: Tokyo
登録日: 2006-11-15

Re: [解決済み]xevでのマウスボタンの調べ方

alt+tabを使わずに,一度event testerの窓をクリックして,マウスを動かさず,目的のマウスボタンを押してみて下さい。

これで,ButtonRelease event…が表示されませんか?

オフライン

 

#6 2008-08-23 12:11:15

syosinnsya
メンバ
登録日: 2008-06-20

Re: [解決済み]xevでのマウスボタンの調べ方

vine_user による投稿:

alt+tabを使わずに,一度event testerの窓をクリックして,マウスを動かさず,目的のマウスボタンを押してみて下さい。

これで,ButtonRelease event…が表示されませんか?

もう一度トライしたらでました。

ButtonRelease event, serial 31, synthetic NO, window 0x4e00001,
    root 0x13b, subw 0x4e00002, time 2352705, (37,33), root:(829,606),
    state 0x0, button 8, same_screen YES

解答どうもありがとうございます。

オフライン

 

Board footer

Powered by FluxBB