トップページ > 記事閲覧
GetJoypadInputStateでshiftキーの入力をとりたい
名前:k 日時: 2024/01/12 17:52

DirectInputでshiftキー入力をとりたいので、GetJoupadinputstateでキー入力をとりたいのですが Button1~10のどれにも対応していません。 Button11にshiftキーを割り当てることはできないのでしょうか。
メンテ

Page: 1 |

Re: GetJoypadInputStateでshiftキーの入力をとりたい ( No.1 )
名前:管理人 日時:2024/01/14 01:47

関数リファレンスには載っていないのですが、SetJoypadInputToKeyInput という関数を使用することで シフトキーを Button11 に設定することが出来ます // ジョイパッドの入力に対応したキーボードの入力を設定する // InputType : 設定を変更するパッドの識別子( DX_INPUT_PAD1等 ) //   PadInput : 設定を変更するパッドボタンの識別子( PAD_INPUT_1 等 ) //   KeyInput : PadInput を押下したことにするキーコード( KEY_INPUT_A など ) int SetJoypadInputToKeyInput( int InputType, int PadInput, int KeyInput ) ; 例えば Button11 に左シフトキーを割り当てたい場合は SetJoypadInputToKeyInput( DX_INPUT_PAD1, PAD_INPUT_11, KEY_INPUT_LSHIFT ) ; を実行することで、以降 GetJoypadInputState( DX_INPUT_KEY_PAD1 ) を実行した際に 左シフトキーが押されていれば PAD_INPUT_11 のビットが立つようになります よろしければお試しください m(_ _)m
メンテ
Re: GetJoypadInputStateでshiftキーの入力をとりたい ( No.2 )
名前:k 日時:2024/01/24 12:48

SetJoypadInputToKeyInputの最初の因数はDX_INPUT_KEY_PAD1では無いのでしょうか。
メンテ
Re: GetJoypadInputStateでshiftキーの入力をとりたい ( No.3 )
名前:管理人 日時:2024/01/24 13:39

はい、DX_INPUT_KEY_PAD1 でも問題なく動作しますが、SetJoypadInputToKeyInput の最初の引数は 『何番目のゲームコントローラ( ゲームパッド )に対して設定するか』なので、正しくは DX_INPUT_PAD1 となります
メンテ
Re: GetJoypadInputStateでshiftキーの入力をとりたい ( No.4 )
名前:k(解決) 日時:2024/01/29 08:07

そうなんですか、回答ありがとうございます。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存