問題タブ [keyboard-events]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
619 参照

winforms - 2 つの連続する KeyDown イベント間の長い遅延

私はちょっとしたゲーム エンジンを書いているようなものです。これらが内部からどのように機能するかを純粋に理解するためです。私は現在、OpenGL や DirectX をいじりたくないので、GDI+ とそのすべての WinForms でコントロールを描画することに固執しています。

明らかに、入力を処理する必要があります。具体的には、キーボード イベントです。ただし、これには問題があります。

このコードは (コントロール パネルのキーボード アプレットで最小の繰り返し遅延を設定した場合でも)、次のようになります。

ご覧のとおり、0.25 秒あります。最初の 2 つのイベント間の遅延。これにより、画面上のオブジェクトの動きが鈍くなります。明らかに、最初はわずかに右に移動し、次に目に見える瞬間に一時停止してから続行します。

その問題を解決するにはどうすればよいですか? これは純粋な WinForms で実行できますか、それとも DirectInput (または最近のコーシャの方法は何ですか?) ルートに行く必要がありますか?

0 投票する
2 に答える
1640 参照

java - 特定のソフトウェアの実行中に Java Robot キー アクティビティが停止するように見える

私は、オンライン ゲームで夜間にキャラクターのアクションを自動化する Java アプリケーションを作成しています (具体的には、ファイナル ファンタジー XI で魚を捕まえます)。このアプリは、ユーザーのキーボード入力をエミュレートするためと、画面の特定の部分での色の変化を検出するために、Java の Robot クラスを多用します。また、マルチスレッドとスイング GUI も使用します。

ゲームを実行せずにスクリーンショットを使用してアプリの応答をメモ帳にトリガーするだけでテストすると、アプリケーションは完全に動作するようです。しかし、実際に FFXI を起動してプログラムを起動すると、何らかの理由で、キーボードとマウスのすべての操作が完全に機能しなくなります。プログラムは引き続き実行されており、Robot クラスは引き続きピクセルの色を読み取ることができます。しかし、Robot.keyPress、Robot.keyRelease、Robot.mouseMove、Robot.mousePress、および Robot.mouseRelease はすべて何もしません。それは最も奇妙なことです-テストするために、文字を入力し続ける単純なループを作成し、メモ帳に焦点を合わせました。その後、ゲームを開始し、メモ帳の焦点を合わせ直しましたが、何もしませんでした。その後、ゲームを終了すると、すぐに再び機能し始めます。

特定のソフトウェアがJavaの特定の機能を停止させる、このようなものに遭遇した人はいますか?

また、これをより興味深いものにするために、昨年、同じクラスとプログラミング手法を使用して、ゲーム内のパーティーが戦っているときに自動的に回復する非常によく似たプログラムを作成しました。昨年、このプログラムは完璧に機能しました。これらの問題に遭遇した後、私はその古いプログラムを掘り起こし、何も変更せずに実行したところ、同じ問題を抱えていることがわかりました。現在と動作していたときの唯一の違いは、Windows Vista を実行していて、現在は Windows 7 を実行しており、いくつかの新しい Java バージョンと FFXI バージョンがリリースされていることです。

一体何が起こっているのですか?(誰かが私のソース コードを表示する必要がある場合は、mikejturley@gmail.com に電子メールを送信してください。私は秘密にしています。)

0 投票する
2 に答える
4340 参照

android - キーイベントをフックする方法

EditText ウィジェットのテキストの長さを制限したいのですが、ユーザーが制限された長さよりも多くの文字を入力した場合、一種の警告ポップアップを表示したいのですが、ポップアップを表示できません。

入力中にポップアップが表示されないのが難点ですが、OnKeyListener や OnKeyDown を利用する方法を考えている方も多いのではないでしょうか。しかし、単語が構成されているときは、OnKeyListener や OnKeyDown には何も入力されないため、必要なときにポップアップを表示できません。

この問題を解決する賢いアイデアを持っている人はいますか?

0 投票する
2 に答える
5555 参照

android - OnKeyboardActionListener の使用方法

簡単に言うと、「OnKeyboardActionListener」に関する例はありますか?

ユーザーがキーボードで文字を入力するたびに、メソッドを呼び出したいです。OnKeyListener または OnKeyDown は、単語が構成されているときに呼び出されません。←問題です。そこで、上記の問題を解決するために「OnKeyboardActionListener」を使用しようとしています。

0 投票する
4 に答える
757 参照

actionscript-3 - 文字数は2番目の文字だけを数え始めますか?

ユーザーが入力できる残りの文字数を計算する関数がありますが、なぜ2番目の文字から数え始めるのかわかりません。最後に、設定した最大量から追加の文字を入力できるようになります。

w入力関数:

0 投票する
6 に答える
3022 参照

c# - C#KeyEventはEnter/Returnキーをログに記録しません

私はこのログインフォームをC#で作成しており、ユーザーが送信をクリックするか、Enter / Returnキーを押すとすぐに、すべてのデータを「送信」したいと思いました。

KeyEventsで少しテストしてきましたが、今のところ何も機能していません。

上記のコードは、イベントが最初から機能するかどうかをテストするためのものです。「d」を押すと「d」が表示され、「8」を押すと「8」が表示されますが、Enterキーを押しても何も起こりません。

これは、Enterが実際には文字にバインドされていないためですが、バックスペースが表示されていたため、問題なく機能したため、Enterキーが登録されなかった理由について混乱しました。

したがって、問題は次のとおり です。Enter/ Returnキーをログに記録するにはどうすればよいですか?そして、なぜ今のようにキーの押下をログに記録しないのですか?

注:イベントをテキストボックスに入れました

したがって、テキストボックスが選択されているときにEnterボタンが押されたときに起動します(これはもちろんずっとです)。おそらくそれはコードの実行と関係があります。

0 投票する
2 に答える
1044 参照

actionscript-3 - ActionScriptのshiftKeyがフルスクリーンモードで機能しませんか?

楕円スプライトを描画し、それをコンテナの表示リストに追加しました。これは、ステージの表示リストに追加されます。キーボードの矢印でスプライトを移動するには、ステージの表示状態が全画面に設定されているときに、shiftModifier:Number変数が機能していないように見えます。shiftModifierは、ステージの表示状態がNormalに設定されている場合に正常に機能します。

フルスクリーンはSafariとFirefoxでテストされています。

0 投票する
1 に答える
1300 参照

javascript - document.onkeyupは、すべきでないときにトリガーします

したがって、次のコードがあります。これは、キー68(dキー)が押されている限り、25ミリ秒ごとにdiv「test」に「true」を追加する必要があります。

コードを保存し、ブラウザにロードして、dキーを押したままにします。私が気が狂っていない場合は、dキーが解放されていなくても、「false」が追加されることがあります。(私はこれをLinuxとVistaのFFとChromeで試しました)。誰かがその理由を知っているか、回避策がありますか?

編集:OSXで実行されているFFでは期待どおりに動作するようです。

0 投票する
3 に答える
37558 参照

c# - WinFormsテキストボックスの「KeyPress」イベントがありませんか?

テキストボックス(WinForm)に「KeyPress」イベントを追加しようとしています

そしてここに「CheckKeys」の内部があります:

ここでの考え方は、テキストボックスにフォーカスがあり、[Enter]ボタンが押されると、何かが発生するということです...

しかし、私のマシンは「KeyPress」イベントを見つけることができません。私のコードに何か問題がありますか?

アップデート:

KeyPressの代わりにKeyDownを入れてみました:

まだ動作していません...

0 投票する
4 に答える
2977 参照

c# - キーボードからの複数入力C#WPF

私はWPFでテトリスクローンを書いています。右矢印キーを押したままにすると、現在のピースが右にシフトします。プレイアビリティのために、ユーザーが最初に右矢印キーを離さなくても、別のキー(つまり、Fキー)を押して可動ピースを回転できるようにしたいです。現在、これを行うと、ピースのシフトが停止します。

これに対する私の最初の基本的な試みは、フックすることでした

次に、コントローラー層にメッセージを送信します。

これを可能にするために入力リスニングコードをどのように構成しますか?

私の現在のコードはこちら