問題タブ [keyevent]
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.
java - KeyEventがJFramejavaによって生成されていませんか?
JFrameと3つのJButtonを含むJavaプログラムがあります。jframeにキーリスナーを追加しました。プログラムを実行すると、jframeウィンドウが開き、デフォルトで最初のボタンが選択されています。私の問題は、KeyEventがこのJFrameによって生成されていないことです。ここで、jframeにKeyListenerを追加するだけでなく、ボタンにもKeyListenerを追加しました。現在、キーイベントはボタンによって生成されています。
JButtonがKeyEventを生成する代わりに、JFrameがKeyEventを生成するようにするにはどうすればよいですか?
実際、私の主な目的は、ボタンのキーボードショートカットを作成することです。
java - Android での KeyEvent.KEYCODE_BACK の疑い
私は3つの活動をしています。1 つ目のアクティビティには、「右に進む」イメージ ボタンがあります。(2 つ目のアクティビティに移動) 2 つ目のアクティビティには、「右に移動」と「左に移動」の両方のイメージ ボタンがあります。(最初のアクティビティに戻るか、3 番目のアクティビティに移動します)。3 番目のアクティビティには、2 番目のアクティビティに移動するための「左に移動」ボタンがあります。そして、戻るキーを押すためのイベントを作成しました。
問題は、1 番目から 3 番目のアクティビティに移動し、戻ってきてから 3 番目のアクティビティに移動することです。1 つ目のアクティビティ --- クリックすると右に移動----> 2 つ目のアクティビティ --- クリックすると右に移動-----> 3 つ目のアクティビティ --- クリックすると左に移動----> 2 つ目のアクティビティ----クリックすると左に移動- ---> 1 番目のアクティビティ----クリックして右に移動----> 2 番目のアクティビティ---クリックして右に移動-----> 3 番目のアクティビティ。
3番目のアクティビティで戻るキーを押すと、2番目に移動します。ここでバックキーを押すと1stに移動します。しかし、ここで戻るキーを押すと、最初のアクティビティに戻ります。最初のアクティビティで 2 回目の戻るキーを押すだけで、アプリケーションが終了します。追加の質問は、Imagebutton を押した場合にのみ表示する方法です。
私は何か意味がありますか?
FirstActivity.java
SecondActivity.java
ThirdActivity.java
java - KeyEventDispatcher はあるアプリケーションでは機能しますが、別のアプリケーションでは機能しません
複雑なマルチスレッド アプリケーションと、最初のアプリケーションのデバッグに使用したいと考えていたシングル スレッド テスト アプリケーションがあります。A を一種として使用しようとしていますKeyEventDispatcher
がkeylistener
、どんなに頑張ってもdispatchKeyEvent
、より大きなアプリケーションで を起動することはできませんが、小さなアプリケーションは最初の試行で機能し、両方とも同じKeyEventDispatcher
クラスを使用します。解決策、または少なくとも説明を求めてインターネットを探しましたが、基本的に何も見つかりませんでした。
小さいアプリケーションのコードは次のとおりです。
KeyEventDispatcher(AoDKeyboard)
クラスのコードは次のとおりです。
KeyEventDispatcher
最後に、動作しないを含む大規模なアプリケーションのコードの一部を次に示します。
大規模なアプリケーションを実行すると、興味深いことが起こります。押したキーはすべて、コンパイラー (eclipse) に入力されます。キーボードのフォーカスがずっとコンパイラーにあったかのようです。
今のところ、問題についての私の最善の推測は、KeyEventDispatcher
キーイベントがディスパッチャーに到達するまでに処理されるように、キューのはるか下に追加されていることですが、完全に間違っている可能性があります。私の質問は、なぜKeyEventDispatcher
あるアプリケーションで動作し、別のアプリケーションでは動作しないのか、そしてどうすれば両方で動作させることができるのでしょうか?
android - OnKeyboardActionListener.onKey で Unicode 値を KeyEvent 定数に変換します
私は Android 開発に不慣れで、現在 Google Android オペレーティング システム (API レベル 11 == バージョン 3.0) 用のインプット メソッド エディター (IME) をプログラミングしています。
(次のコードは、問題を指摘するために単純化されています。)
次の方法で、基になるアプリケーションに文字を送信できます。
ここで、特別なキーの組み合わせ (SHIFT + A など) を送信したいと考えています。この目標を達成するための Java コードは次のとおりです (SHIFT + A の特殊なケースの場合)。
前のコード サンプルのコメントは、私の問題を示しています。KeyEventオブジェクトを介してキーの組み合わせを送信するには、変数primaryCode (押されたキーの Unicode コードを含む) をクラスKeyEventの定数に変換する必要があります。
この場合の便利な方法は既に存在しますか、それとも自分で作成する必要がありますか? 一般的に:キーの組み合わせを送信する上記のソリューションはエレガントですか、それともより良いアプローチが存在しますか? (インターネット上で Android IME の例を見つけるのは簡単ではありません...)
前もって感謝します!
android - Android APIを介してキーの組み合わせ(メタキーとキーコード)を送信する
Androidでメタキー(CTRLなど)とキーコード(RETURNなど)の組み合わせを送信する方法がわかりません(APIレベル11 =バージョン3.0を使用しています)。
KeyEventクラスのドキュメントには、META_CTRL_ONなどの定数が記載されており、メタキーのキーコード定数(KEYCODE_CTRL_LEFTなど)もサポートされています。
Javascript Key Event Testerを使用して、入力方式エディター(IME)によって生成された出力をテストしています。ところで、私の目標はソフトウェアキーボードを開発することです。
ドキュメントが正しいことを理解していれば、次のコードを実行してCTRLキーのみを送信するだけで十分です。
ただし、これをJavascript Key Event Tester(上記を参照)に対して実行しても、何も起こりません。
したがって、メタキーのみを送信する方法と、メタキーを別のキーと組み合わせて送信する方法の手がかりを得る必要があります。また、SHIFT + ENTER(具体例)を送信するために次のことを試みました。
ここでも上記と同じ問題が発生します。認識されるキーはENTERのみです。
メタキーやキーの組み合わせでKeyEventクラスを使用する方法の例をインターネットで数時間検索しましたが、コードの例が少なくとも1つ見つかりませんでした。
つまり、結論として、KeyEventクラスの経験があり、Android APIを介してキーの単純な組み合わせ(SHIFT + ENTERなど)を送信する方法を教えてくれる人はいますか?
前もって感謝します!
webkit - 特別なキーイベントを注入するPython Webkit GTK
GTK キーボード イベントをウィンドウ、特に Webkit Webview を含むウィンドウにディスパッチ (注入) しようとしています。私が抱えている問題は、Backspace、Up、Down などの特殊キーに関するものです。何らかの理由でそれらが適切に挿入されないため、対応する機能がトリガーされません。他のキーについては、完全に機能します。キーボードをウィンドウに集中させ、ウィンドウをウィンドウの z-index スタックの一番上に配置しようとしましたが、役に立ちません。
これは、関数にキーコード (key_value) を渡すだけの C から Python へのバインディング部分です。キーリリースイベント (GDK_KEY_RELEASE) についても同様のことを行います。Python の部分では、これら 2 つの関数 (押してから放す) を呼び出し、a、s、d などの通常のキーでは機能しますが、BackSpace、Enter、Delete などでは機能しません。
javascript - OSに依存しないキーボードイベントから文字へのマッピング
明らかに、Webアプリケーションはユーザーのキーボード設定に合わせる必要がありますよね?KeyDownではなく実際のKeyPressイベントに接続するようにDojoに指示する方法はありますか?そうすれば、文字を入力することができますevent.charCode
か?
私たちは複数のオペレーティングシステムなどを備えた国際的な世界に住んでいるため、ブラウザにオペレーティングシステムに問い合わせる機能が組み込まれていない限り、この情報ではユーザーが実際に入力した文字を見つけるのに十分ではありません。
例として、Linuxのドイツ語キーボードでは、[Alt Gr-8を介して到達します。AltGr-8は、Altのキーダウンを送信し、次に[を使用してキーダウンを送信します。いいでしょう、最初の部分は無視してください。ドイツ語キーボードを使用するWindowsシステムでは、2番目のイベントはctrlKeyとaltKeyがtrueに設定された8の場合です。他のキーボード設定では、このキーコンボは実際には別の文字を意味するため、JavaScriptコードはハードコードされたものを解釈する必要はないと思います。
別の例として(おそらくDojoに接続されていませんが、別のプログラマーの不具合、暴言を言って申し訳ありません…)、MacのUSキーボードでは、OutlookWebインターフェイス内にドイツ語の文字ßを入力できません。 !)Altキー(Macでは入力された文字を変更するためにのみ使用されます)をハイジャックしてアクションをトリガーし、alt-sを再マップして送信を意味します。もちろん、通常は単語の途中です。
javascript - HTML5 ネイティブ ドラッグ中のキーダウン/アップ イベントの検出
ネイティブ HTML5 を使用してドラッグできる要素があります。これには、dragstart、drag、および dragend イベント リスナーが割り当てられています。さらに、document.body 要素に割り当てられた keydown および keyup イベント リスナーもあります。
ドラッグ可能な要素をドラッグすると、ondrag イベントが期待どおりに発生します。何もドラッグせずにキーを押して放すと、document.body keydown/up イベントが発生します。
ただし、ondrag の実行中に keydown/up を実行すると、document.body の keydown/up イベントは発生しません。これに対する回避策/ハックはありますか?
c# - KeyEvent はキーを検出しません C#
私は現在困惑しています。KeyEvent を機能させることができないようです。このような単純なコードは、押しているキーに反応しません。KeyDown と KeyPress を試しました。コンパイル中にエラーはありません...何が原因ですか?? メッセージ ボックスを表示せずに E キーを入力するだけです。
android - if else ステートメントの両側が実行されるのはなぜですか? また、それを修正する方法は?
私はコードのブロックを持っています:
私が欲しいのは、Enterキーを押すとログインコマンドが実行されることです(起動はログインを実行するボタンです)。ただし、true ブロックを実行した後、else ブロックも実行し続け、false を返し、(一部のデバイスでのみ) 2 回目のログインを引き起こします。
したがって、私の質問は 2 つの部分で構成されています。if else ステートメントを true と false の両方として評価する方法と、そうしないようにする方法です。私はそれを実現するためのいくつかのトリックを考えましたが、これはよりよく理解され、すぐにパッチが適用される問題のようです.