問題タブ [lost-focus]
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.
mouseleave - jQuery UI ボタンセットで停止ボタンがアクティブ状態を失うのを防ぐ
マウスリーブでボタンがアクティブなクラスを失うのを防ごうとしていますが、機能しません。
したがって、私のボタンはjQueryのbuttonset()
. それらはボタンであり、チェックボックスではありません。チェックボックスが機能するには ID が必要なため、問題外です。
これは私のコードです:
ボタンにクラスがある場合、両方が明示的に削除されるまでクラスui-state-persist
を失うべきではないという考えです。ui-state-active
アクティブなボタンの切り替えは、このハンドラーによるクリックで行われます。
e.stopPropagation()
また、 andおよびそれらのすべての組み合わせを追加しようとしましe.preventDefault()
たが、機能しません。そして、これとまったく同じコードが通常の UI ボタン (ボタンセットにないもの) にも機能します。
どんな助けでも大歓迎です。
編集
私はまだこの問題を解決していません。私を助けてくれた皆さんに報奨金をあげたいのですが、私は新しいメンバーなのでできません。buttonset()
チェックボックスではなく、永続的にアクティブなボタンを使用したいというこの問題に遭遇した人はいませんか?
delphi - Delphi: dll のモーダル フォームからスプラッシュ フォームへ
だから、私はこの仮想キーボードを持っています...
これは dll 内にあり、StayOnTop Modal フォームに基づいています。これは、入力されたテキストを含む WideString を返す関数によって呼び出されます。この仮想キーボードには独自の TEdit があり、ユーザーが書いた内容を確認できます。
必要な動作は、Esc キーまたは Enter キーが押されるまで、KB フォームが最上位にあり、フォーカスを維持することです。
このキーボードへの呼び出しの 1 つは、メイン フォームの OnShow イベント内で発生するため、キーボードが最初に呼び出されるまでには表示されません。
これは今までいつもそうでした。
メイン フォームが実際にロードされる瞬間までに発生するさまざまな手順 (スキンのロード、プラグインのロード、データベースの初期化など) をユーザーに案内するスプラッシュ フォームを作成しました。
スプラッシュ スクリーンは、DataModule OnCreate が実行されるとすぐに表示され、メイン フォームの OnActivate で閉じられます。したがって、このスプラッシュ フォームは StayOnTop ではありません。メイン フォームが表示された瞬間に閉じる必要があるため、その必要はありません。
途中でキーボードが表示されるので、ユーザーは必要なデータを入力できます。
私のアカウントでは、キーボードはモーダル ウィンドウであるため、フォーカスを取得する必要がありますが、実際には、キーボード フォームをクリックするまでスプラッシュ フォームにフォーカスがあります。これは回避したいことです。
スプラッシュ フォームがキーボードの前に呼び出された場合、Modal も StayOnTop もありません。誰かがフォーカスを維持する理由と、可能であればそれを回避する方法を教えてください。
PS: SO で同様の問題に関する他の質問を見つけましたが、逆であることが判明しました: StayOnTop フォームがメインのフォームに焦点を合わせないようにすることです。それは私が必要とするものではありません。
android - ボタンのフォーカス状態が失われる : Google TV
私の Google TV アプリケーションには、押された、フォーカスされた、有効になったなどのすべての状態を持つ約 6 つのボタンがあります。
すべてのボタンは、以下のように xml ファイルで同じ押された、フォーカスされた、有効になったなどの状態を持っています。
Google TV リモコンを使用して、左側に移動し始めると、ボタンがフォーカスを移動し、一番左のボタンに到達すると、フォーカスが一番左のボタンにとどまります。
その位置(左端)から右に移動し始めると、フォーカスは右端のボタンまで来ますが、その後は失われます。
それは受け入れられた行動ですか、それとも何か問題がありますか?
どんな助けでも大歓迎です。
c# - LostFocus イベントが異なるタイミングで呼び出されるのはなぜですか?
この MSDN ページ(またはこの件に関する関連ページ) を参照すると、次のように述べられています。
キーボードを使用してフォーカスを変更すると、次の順序でフォーカス イベントが発生します。
- 入る
- フォーカスを得た
- 離れる
- 検証中
- 検証済み
- ロストフォーカス
ただし、マウスを使用してイベントを発生させると、順序が変わります!
マウスを使用するか、Focus メソッドを呼び出してフォーカスを変更すると、次の順序でフォーカス イベントが発生します。
- 入る
- フォーカスを得た
- ロストフォーカス
- 離れる
- 検証中
- 検証済み
これにより、一連のイベントがまったく異なるものになるのではないでしょうか。ここでの私の解釈は、キーボード チェーンがすべてが正常に動作していることを確認してから、LostFocus
イベントを発生させるというものです。それでも、マウスイベントは、何らかの理由で検証する前にそれを発生させるようです。何故ですか?
c# - wpf マウスのキャプチャとフォーカスの問題
ユーザーコントロール内にテキストボックスがあります。Usercoptrol には、String 型の Dependency プロパティ "Text" があります。ユーザーコントロールの Text プロパティは、TextBoxes Text プロパティにバインドされています。
xaml コード...
注意してください私たちのアプリには、「元に戻す」機能を提供するために、UpdateSourceTrigger が PropertyChanged ではなく LostFocus であるという理由があります。テキストを変更すると、フォーカスが失われたときに元に戻すステップが作成されます。
ユーザーが Usercontrol の外側で、アプリ内の別のコントロールをクリックした場合があります。「FocusLost」イベントは、wpf システムによって起動されません。したがって、私は
このような場合の更新に役立つことがわかりました。
このイベントをキャッチするには、テキストが変更されたときにマウス キャプチャを設定し、クリックが発生したときにキャプチャを解放する必要があります。
このメカニズムが実装されていて、ユーザーがテキスト ボックスのどこかをクリックすると、他の UIElement の PreviewGotKeyboardFocus などのトンネリング イベントがキャプチャのために発生しないことがわかりました。
このメカニズムが他のクリックされた要素の PreviewGotKeyboardFocus イベントをブロックしないようにするにはどうすればよいですか?