問題タブ [keycode]

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 に答える
2541 参照

vb.net - VB.NET 2008 - Button.click イベントを作成するにはどうすればよいですか?

Button.click イベントの作成方法 テンキーパッドで Enter キーとピリオド (del) キーの両方を実行しますか?

コードスニペット:


Case Keys.Enter動作しCase Keys.Separatorません。period(del) キーの Keys.OEMPeriod のようなものもありません。

KeyPressイベントなどでエンターキーを呼び出してみましたが、役に立ちませんでした。

何か案は?学校のプロジェクトで Windows の calc.exe を模倣しようとしていますが、テンキー機能などのいくつかの機能を追加しようと考えています。

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

java - Java (OSX) での 3 ボタン アクセラレータ キー ホット キーの設定

作業中の Java アプリケーションでいくつかのホットキーを変更しようとしていますが、使用しているシステムは 3 つのボタン キーの組み合わせでは機能しないようです。現在、JMenuItem アイテムがあり、次のような呼び出しでホットキーを設定します。

getAcceleratorKey メソッドは次のとおりです。

このメソッドがパラメーターとして取る keyCode は、コマンドで押された 1 つのキーのみであると思われます。では、元に戻すには Command-shift z のようなことをするにはどうすればよいでしょうか? 別のクラスを使用する必要がありますか?

0 投票する
10 に答える
325672 参照

javascript - JavaScript で KeyCode から Character 値を取得し、トリムします

これは私が今持っているものです:

e.keyCodeが ASCII 文字 ( Altbackspacedel、など) ではない可能性がある場合arrows...何らかの方法でtrimこれらの値を取得する必要がありますvalue(できればプログラムで - ルックアップ テーブルを使用しない)。

私はjQueryを使用しています。

私はkeydownイベントを使用する必要があります。キャプチャする必要がある特定のキー ( 、、など)keyPressに対してアクティブ化されません。Escdelbackspace

setTimeout入力の値を取得するために使用できません。setTimeout(function(){},0)遅すぎる。

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

c# - KeyCode とキーボードのレイアウトと言語

テキスト ボックスの許容エントリとしてアスタリスクを含める必要があります。

キーボード レイアウトと言語に関係なく、KeyDown イベントでこのキーをテストするにはどうすればよいですか?

ポルトガル語の QWERTY 配列では、数字キーパッドを無視して、このキーを でテストできます Keys.Shift | Keys.Oemplus。しかし、それは他のレイアウトや言語には当てはまりません。

0 投票する
7 に答える
49446 参照

javascript - javascript 減算 (-) キーコード

わかりました、マイナス/減算/-が押されたかどうかを確認するコードが必要です。押された場合は、警告ボックスが表示されるようにします。109キーコードとキーコードの両方を試しまし189たが、まだ望ましい結果が得られません。押し"-"てもアラートボックスが表示されない

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

c - ASCII文字をCGKeyCodeに変換する方法は?

CGKeyCode文字を指定すると、現在のキーボードレイアウトでのその文字の位置に関連付けられた値を返す関数が必要です。たとえば、「b」を指定すると、kVK_ANSI_BUS QWERTYを使用してkVK_ANSI_Nいる場合、またはDvorakを使用している場合に返されます。

Win32 APIには、VkKeyScan()この目的のための機能があります。X11には機能がありますXStringToKeySym()。CG APIにそのような機能はありますか?

パラメータをに渡すためにこれが必要CGEventCreateKeyboardEvent()です。代わりに使用してみましCGEventKeyboardSetUnicodeString()たが、それは明らかに修飾子フラグ(私が必要とする)をサポートしていません。

私はこれを広範囲に検索しましたが、まともな答えを見つけることができません。現在、私は次のコード(オンラインで見つかりました)を使用していますが、これは機能しますが、正確にはエレガントではなく(そして単純化する方法を解読するのはかなり難しい)、本番コードでは使用したくないです:

a。)(できれば)私が見落としている標準機能、またはb。)(ほぼ確実に)よりエレガントな方法で自分自身を書く方法はありますか?

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

c# - @charのキーコード

@キーの識別子を教えてもらえますか?

たとえば、keys.EscapeはESCキー用です。@のためにそれが何であるか知りたいです

ありがとうございました。

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

python - Pythonのキーコードへの文字

文字列をキーコードに変換してXlibで記述できるようにしたい(Linuxでのユーザーアクションをシミュレートするため)。キーコードはASCIIではなく、xevを使用したときに取得するコードです。

たとえば、「a」のキーコードは24です。

文字が大文字かどうかを簡単に検出して、ALT +小文字(文字)の組み合わせを作成できますが、キーコードの取得方法がわかりません。

1つの解決策は、すべての組み合わせ(a = 24、b = 56、c = 54、...)のリストにすることですが、関数がある場合はより良いでしょう。

私はAZERTYキーボードを使用しています。QWERTYキーボードでは、同じ文字のキーコードは異なりますか?

ありがとうございました

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

javascript - キーを押したときにテキストフィールドの新しい値を確認するにはどうすればよいですか?

単一のフォームフィールドがあり、フィールドがいつ変更されたかを検出し、フィールドの新しい値を使用して追加のコードを実行できるようにする必要があります。押されたキーが実際にテキストボックスの値を変更する場合にのみ、コードを実行したいと思います。これが私が思いついた解決策です。

ただし、問題は1つだけです。onkeypressは、フィールドの値が更新される前に起動されるため、値を取得すると、前の値が取得されます。キーが値を変更したかどうかをテストする方法を知っている場合は、キーアップのみを使用しますが、一部の文字(矢印キーなど)はフィールドの値に影響を与えません。

何か案は?

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

javascript - Mac 上の Firefox でキーダウン イベントとオートコンプリートに問題があります

これは私を夢中にさせています。説明するのは難しいですが、やってみます。

サイトのフロント ページに入力テキスト フィールドが 1 つあります。keyCode をチェックする keydown イベント オブザーバーをコーディングしました。その ENTER (または equiv) の場合は、入力値 (電子メール) をチェックします。電子メールが有効で DB 内で一意である場合、フォームが送信されます。基本的なもの、またはそう思うでしょう。

フィールドにメール アドレスを入力して Enter キーを押すと、すべてのブラウザで問題なく動作します。ただし、最初の数文字を入力し、矢印キーを使用して履歴ドロップダウン ボックスからメールを選択し (ここでの意味を理解していただければ幸いです)、Enter キーを押すと、結果が異なります。フォーム フィールドの値は、入力した数文字としてキャプチャされているため、検証は失敗しています。エンターキーを押して履歴ドロップダウンからメールを「選択」すると、入力しているようにブラウザーが中断しているようです。

Chrome と Safari では、正常に動作します。Enterキーを押して履歴ドロップダウンからメールを「選択」すると、そのメールアドレスがテキストボックスに入力されるだけです。2 回目の ENTER キーを押したときにのみ、イベント オブザーバーがトリガーされ、電子メールが検証されます。

なぜこれが起こっているのか、誰かが光を当ててくれることを願っています...私の直感はブラウザの問題であり、私が修正できないものになるでしょう.

ありがとうリー

編集:私の質問に明確にするために、「キーダウン」イベントを使用してエンターキーが押された瞬間をキャプチャすることを追加させてください。「キーアップ」イベントを試してみましたが、これで上記の問題は解決しましたが、フォームの送信を単独で停止できないようです。「keyup」イベントはデフォルトの動作の後にトリガーされるため、これは適切な選択ではありません。

さらに編集:

ありがとうございます。ところで、あなたの英語は素晴らしいです (下手な英語についてのあなたのコメントに応えて)。

イベントハンドラーを次から変更しました。

これに:

submitViaEnter:

動作しているように見えますが、現在の問題は、ブラウザーが関数を実行する前にデフォルトのアクションを実行することを許可されていることですsubmitViaEnter。つまり、Enter キーを押したときにフォームが送信されていることを意味します。