C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: ホットキーの使用方法


(過去ログ 31 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■15241 / inTopicNo.1)  ホットキーの使用方法
  
□投稿者/ アステリア (1回)-(2008/03/09(Sun) 08:50:49)

分類:[C#] 

ゲーム中に特定のキーを押したら、自作のアプリを作動させるという事をしたいのですが
ホットキー?の実装がわかりません。

内容的には、別のゲームウィンドウがアクティブの時に、そのままホットキー、例えばShift+Q を押したら
自作アプリにある特定のボタンを押すというような物です。

自作アプリがアクティブであればホットキーも何も関係なくそのままShift+Qとかを取得すればいいんですが
ゲームなど他のウィンドウがアクティブの時だと自作アプリのフォームのイベントではないため当然そのままではとれません。
それで、ゲーム中でもホットキーで他のアプリを動かすソフトが結構あるので、そういう実装にしたいのですが
実装方法の見当がつきません。

言語はC#を使用しています。
C++とかならフックとかでできそうな気もしますが、C#というか.NETではフック関係はあんまり使わないようなので。
引用返信 編集キー/
■15243 / inTopicNo.2)  Re[1]: ホットキーの使用方法
□投稿者/ ダッチ (194回)-(2008/03/09(Sun) 10:04:32)
アステリア さん、こんにちは
ダッチです。

ホットキーの実装についてはこちらを参考にしてみてください。

 ホットキーを使ってフォームをアクティブにする
 http://smdn.invisiblefulmoon.net/ikimasshoy/dotnettips/tips025.html

ホットキーの登録には .NET Framework の機能ではなく API を使用しています。
ホットキーの解除も忘れないようにしてください。
引用返信 編集キー/
■15244 / inTopicNo.3)  Re[2]: ホットキーの使用方法
□投稿者/ Hongliang (252回)-(2008/03/09(Sun) 11:17:51)
Hongliang さんの Web サイト
ほかのウィンドウのときはそのまま入力させるということを考えると、RegisterHotKey よりも SetWindowsHookEx/WH_KEYBOARD_LL の方が良いかと思います。
引用返信 編集キー/
■15276 / inTopicNo.4)  Re[1]: ホットキーの使用方法
□投稿者/ myugaru (39回)-(2008/03/10(Mon) 02:24:42)
myugaru さんの Web サイト
2008/03/10(Mon) 02:39:36 編集(投稿者)
2008/03/10(Mon) 02:26:11 編集(投稿者)

No15241 (アステリア さん) に返信
> 言語はC#を使用しています。
> C++とかならフックとかでできそうな気もしますが、C#というか.NETではフック関係はあんまり使わないようなので。

http://d.hatena.ne.jp/myugaru/20071204/1196779914
http://d.hatena.ne.jp/myugaru/20071203/1196693758
参考にどうぞ。
引用返信 編集キー/
■15291 / inTopicNo.5)  Re[2]: ホットキーの使用方法
□投稿者/ アステリア (2回)-(2008/03/10(Mon) 15:02:19)
みなさんありがとうございます。
実装自体はダッチさんの所をC#に変換してやる事で希望通りの動作をするようになりました。
他の方々の情報も別の場面で使う事もあるかもしれないので、見ながら調べてみたいと思います。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -