問題タブ [keydown]
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.
c# - C#で「Keys」列挙値を「int」文字に変換するにはどうすればよいですか?
これは簡単なことのように思えますが、ここで何が必要かを理解するのに苦労しています。
「KeyDown」イベントハンドラーで、「e.KeyValue」が数値の場合、それを数値として扱い、intとして格納したいと思います。したがって、テンキーで「8」を押した場合、「Numpad8」は必要ありません。加算または減算できるint値8などが必要です。
では、KeyValueからintに変換するにはどうすればよいですか?
c# - C# の DataGridView で "CellEndEdit" をトリガーするキーストロークをキャプチャするにはどうすればよいですか?
EditOnF2 に設定された DataGridView があります。セルの値を設定する CellEndEdit イベント ハンドラでデータの特別な処理を行います。Esc キーが押されたときに元の値に戻る EditOnKeystrokeOrF2 の機能が必要です。残念ながら、CellEndEdit イベント ハンドラでは、CellEndEdit イベントが発生した原因を特定する方法がわかりません。Esc キーが押されていない場合にのみセルの値を変更したい。それがあったかどうかはどうすればわかりますか?
編集: セルが編集されているとき、または最後の終了キーストロークに対して KeyDown イベントが発生しないことに注意してください。
Edit2: KeyPreview の提案を試しましたが、フォームは押された Escape キーをまだキャプチャしません。
Edit3:これを機能させるために実験を行ってきました。元々、以下のいくつかを別の投稿として投稿しましたが、ここに含める方がより関連性があると感じています.
EditProgrammatically に設定されている DataGridView にセルがあります。編集を開始するキーストロークをキャプチャするために、cell.Value をキーストロークに等しく設定しています。ただし、これはセルの「エスケープ」機能を台無しにします。エスケープを押すと、元の値に戻るのではなく、プログラムでセルに挿入したキーストロークに戻ります。
セルに「EditedFormattedValue」を設定できれば、キーストロークの値を入力したい場所になると思いますが、これは読み取り専用のようです。私が試みていることをどのように達成できますか?
明確にする例:セルに「54.3」の値があり、「9」キーを押すと、セルの編集が開始され、そこに「9」が配置されます。Escape を押すと、「54.3」ではなく「9」に戻ります。私が欲しいのは、元の値「54.3」に戻ることです。
ですから、私はこの問題に最初から最後まで取り組んでいます。本当の問題は、元の値を上書きしていて、元に戻す必要があるかどうかを判断する方法がないことだと思います。
Edit4: CellValidating を使用する価値があるように見えますが、実験すると奇妙な動作が見られます。新しいプロジェクトで、DataGridView を作成し、さまざまなイベントに登録して、CellValidating が CellEndEdit の前に起動されることを確認します。ただし、これを機能させようとしている私のプロジェクトでは、CellEndEdit が CellValidating の前に起動しています。違いが何であるかについてのアイデアはありますか?
wpf - WPF TabControl に Ctrl+Tab を無視させる
私は、ウィンドウのフルサイズの TabControl と、タブ内のその他のものを使用して、「タブ ブラウジング」メタファを使用するアプリを作成しています。場合によっては、これらのタブ自体に他の TabControls が含まれることがあります。
(タブ内のタブは混乱を招く可能性があるため、内部の TabControl のスタイルを変更して、TabControl のように見えないようにします。おそらく、タブの代わりに上部で ToggleButtons を使用するようにスタイルを設定します。)
この UI は、タブ ブラウジングのメタファーが機能することを期待するように動作する必要がありますCtrl。 t は TabControl のように見えるため、 +Tabに応答することは想定されていません)。ただし、もちろん、内側の TabControl が最初にキー イベントを取得し、それ自体を処理します。CtrlTab
内側の TabControl がCtrl+TabおよびCtrl+ Shift+Tabキー イベントに応答しないようにして、これらのイベントが外側の TabControl にバブル アップできるようにする最善の方法は何ですか?
c# - C#でキーボードストロークをキャプチャする
こんにちは、
次の問題があります-次のテキストはリッチテキストボックスにあります。
今日の世界は[[素晴らしい]]です。
素晴らしいの場合のように、ユーザーが単語の前に2つの角かっこを付けて単語の後に付けると、角かっこで囲まれた単語(この場合)は、リンク(緑色)に変わります。
キーストロークのシーケンスを取得するのに問題があります。ユーザーが[[を入力したことをどのように知ることができるので、それに続く残りのテキストの解析を開始できます。
KeyDown、event、listを操作することで入手できますが、エレガントには見えません。
適切な方法を教えてください。
ありがとう、スジェイ
silverlight - Silverlight テキストボックスのオーバーライド
バックスペースキーダウンイベントをトラップするために、テキストボックスのキーダウンイベントを取得しようとしています。テキストボックスをオーバーライドするクラスを追加することで、それが機能します。方法がわからないのは、テキストボックスがユーザーコントロールにあるクラスと通信することです。
ユーザーがテキストボックスに入力すると... abcdまたはbackspaceと言うと、ユーザーコントロールで何かを更新する必要があります。テキストボックスに何文字あるかを表示するものが欲しいとしましょう。誰かがそれを手伝ってくれますか。これが私がこれまでに持っているものです
ありがとうシャノン
c# - C# - Tetris クローン - ブロックが矢印キーの組み合わせに正しく反応しない
Visual C# 2005 で Tetris ゲームのプログラミングに取り組んでいます。これは、私がこれまでに設計した中で最も大規模なプログラムです。
形状クラスとブロック クラスを作成して、さまざまな Tetris ピースの位置、動き、表示を制御します。各シェイプに moveDown()、moveLeft()、および moveRight() 関数 (および対応する canMoveDown()、canMoveLeft()、canMoveRight() ブール関数を使用して、移動しても問題ないことを確認します) があります。これはすべて美しく機能しています。
下、右、左の矢印キーを使用して、ユーザーがブロックを移動できるようにしたいと考えています。また、タイマーを使用して、数ミリ秒ごとに 1 行ずつ自動的に形状が落ちるようにしたいと考えています。
KeyDown イベント ハンドラーを使用して、ユーザーが下、左、右の矢印キーを押したときを確認しています。これはそれほど難しいことではありません。問題は、斜めの動きを許可したいということであり、可能な限りスムーズに動作させたい. 私は、さまざまなレベルの成功で、この問題にアプローチするさまざまな方法を試しました。だけど、なかなかうまくいかない…。
私の最も成功したアプローチは、3 つのブール値変数を使用して、下、左、右の矢印キーが押されている時間を追跡することでした。KeyDown イベントではブール値を true に設定し、KeyUp イベントでは false に設定します。KeyDown イベントでは、ブール変数を使用してどの組み合わせが現在押されているかを確認して、ブロックの移動方法も伝えます。1つのことを除いて、それは本当にうまくいきました。
矢印キーの 1 つを押したままにし、次に 2 つ目の矢印キーを押してから 2 つ目のキーを放した場合、ブロックは、解放されていない最初の矢印キーの方向に移動し続けるのではなく、完全に移動を停止します。まだ。これは、2 番目のキーが KeyDown イベントをトリガーし、そのリリース時に KeyUp イベントが発生し、最初のキーが発生したにもかかわらず、KeyDown イベントの発生が完全に停止したためだと思います。
私は一生、この問題に対する満足のいく解決策を見つけることができません。
どんな助けでも大歓迎です=)
asp.net - F5が押されていることを検出し、更新します
Webフォームがあり、F5ボタンが押されたかどうか、またはページが更新されたかどうかを検出したい。私はポストバックについて知っていますが、それは私が探しているものではありません。ボタンがクリックされ、パラメータの値がグリッドビューに設定されたときにモーダルポップアップで読み込まれるグリッドビューがあります。更新がヒットされ、モーダルポップアップボタンが以前にクリックされた場合、更新直後にモーダルポップアップが表示されます。これを防ぐために、ページが更新されているかどうかを検出したいと思います。何か案は?オーバーライドを試してみようと思ったのですが、使い方がよくわかりません。Control.ModifierKeysを試しましたが、ModifierKeysにアクセスできません。
apache-flex - フレックスフレックスのキーダウン
2 つのキャンバスを定義した Flex の小さなアプリケーションがあります。そのうちの 1 つでコントロールを追加し、もう 1 つは何かを描画するために使用され、コントロールは追加されません。
アプリケーションに処理されるキーダウン イベントを追加しますが、最初のキャンバス (コントロールが追加されたもの) をマウスでクリックした後にのみトリガーされます。そうしないと、キーが押されたときにイベントがトリガーされません。
私はいくつかのことを試しました: 2 番目のキャンバスにフォーカスを設定する、キーダウン ハンドラーをアプリケーション (this)、ステージ、キャンバスに追加する... 残念ながら、フォーカスがどこにあってもキーダウンをトリガーする解決策が見つかりませんでした。 .
blackberry - Fieldサブクラスで「delete」キーを検出するにはどうすればよいですか?
BlackberryキーボードのDeleteキーを検出して上書きしようとしています。
何らかの理由で、それがそのポイントに達したときのように、それが私のcaseステートメント内に入ることが決してありません:
私のエラーは何ですか?
silverlight - Silverlightアプリケーションでキーストロークをキャプチャするにはどうすればよいですか?
Silverlight2アプリケーション内で発生するキーストロークをキャプチャしようとしています。入力フィールドはありません。ゲームを書いているので、どの矢印キーが押されているかを知る必要があります。イベントハンドラを介してこれらをキャプチャする方法についての私の最善の推測は失敗します。何かお勧めはありますか?