問題タブ [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.

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

wpf - アクセスキーを使用すると、LostFocusバインディングが機能しません

次の例を検討してください。実際には、バインディングソースはデータオブジェクトである可能性が高いことに注意してください。TextBlock簡単にするためにを使用しています。

上記の例では、に名前を入力して"Joe"[TextBox保存]ボタンをクリックすると、TextBlockが更新されLostFocus、データが適切に「保存」されます。すべてが良いです。

ただし、を入力"Bob"TextBox、アクセスキー(Alt-S)を使用して保存すると、のイベントが発生しTextBlockないため、は更新されません。その結果、バインディングソースが更新されず、間違った値(つまり、)が保存されます。LostFocusTextBox"Joe"

ほとんどのWPFデータ入力フィールドでは、検証を(ではなく)TextBox実行する必要があります。ただし、アクセスキーが使用されたときにイベントが発生しない(したがってバインディングが更新されない)場合、エントリを検証するにはどうすればよいですか?WinFormsにはとイベントがありますが、WPFにはありません。LostFocusPropertyChangedLostFocusValidatingValidated

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

.net - フォームが非アクティブ化されたときにアクティブ化が行われる場所を決定する

フォームが非アクティブ化されたときにフォーカスを受け取るウィンドウを決定する方法を知っている人はいますか?

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

windows - Delphi でタスクバー ボタンをクリックするとフォームが他のフォームの上に表示される

基本的な質問: Update プロシージャを呼び出すと、TStatusBar がちらつきます。これを無痛に修正する方法

実行されたコードは、質問の最初の投稿の最初の部分にあります (薄い灰色の区切り線が表示されます) ...

しかし、問題は、このコードが実行されている間、フォームが自動的にアクティブ化されず、他のすべてのアプリケーションの上部にフォーカスされないことです。

私はこれらの記事を読みました:

http://www.installationexcellence.com/articles/VistaWithDelphi/Original/Index.html
http://delphi.about.com/od/formsdialogs/l/aa073101b.htm

しかし、彼らによれば、それは何があっても機能するはずです。TApplicationEvents と TForm のすべてのイベントを Show で試しました。表示: 再描画; リフレッシュ; 前に持ってくる; ...何も機能しません。

したがって、マルチスレッドまたはWM_SYSCOMMANDメッセージのトラップと、SC_ACTIVEイベントでの単純なフォームの再描画の2つのオプションがあると思います。このシナリオは成功するでしょうか?

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

asp.net - ASP.NETTextBoxLostFocusイベント

TextBoxがフォーカスを失ったときに呼び出されるように、サーバー側でコードをトリガーする必要があります。

onblurクライアント側イベントがあり、LostFocusイベントがないことを知っているので、TextBoxがフォーカスを失ったときにポストバックを発生させるにはどうすればよいですか?

アップデート:

私はこれにかなりまともな解決策を与えるように思われるブログを見つけました。これには、カスタムイベントをTextBoxサブクラスに追加し、サーバー側イベントを呼び出すクライアントスクリプトをonblurJavaScriptクライアントイベントに登録することが含まれます。

以下は、VBでの私の実装です。

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

wpf - WPF: 特定のコントロール/ビュー/ビューモデルでの LostFocus イベント

私は MVVM パターンを使用して WPF で作業していますが、WPF と MVVM の両方のニュアンスに頭を悩ませているため、一般的にはうまく機能しているようです。しかし、私は現在、特定の問題で立ち往生しています。私の実際のアプリケーションはかなり複雑なので、単純化するために、パターンに関する Josh Smith のほぼ定義的な記事を取り上げ、その中でアプリケーションを使用してみましょう。

図 2 を考えてみましょう。ユーザーが名前と姓のフィールドに何かを入力したとします。次に、ユーザーは、別の顧客タブをクリックするか、同じアプリケーション内のまったく異なるビューモデルをクリックして、ワークスペース (ビューモデル) から完全に離れます。この場合、私が望んでいるのは、アプリケーションが「変更を保存しますか? はい/いいえ/キャンセル」と尋ね、適切に応答することです。これは...課題を提示しました。

ユーザーが最初のパスで PreviewLostKeyboardFocus が必要であることを「キャンセル」できるようにしたいので (Handled=true を設定してフォーカスシフトをキャンセルできるため)。ただし、一部のユーザー アクション (別のワークスペースのタブをクリックするなど) では、キーボード フォーカスが移動しません。LostFocus はその点で私をよりよくカバーしますが、それはフォーカスが既に失われた後でのみ (もちろん、元に戻すことはできますか?)、イベントがビュー自体からのものであったかどうかを判断する際に問題があります (つまり、フォーカスを離れています)。ビュー全体) または含まれているオブジェクトから単純にバブルアップした場合。

そして、これらすべての全体像-これはビューの問題のようですが、それは魔法のビューモデルではなくビューでコードを書くことを意味します. これは、私がこれを正しく見ていないと私に思わせます。

ですから、このすべてを明確にする大きな概念的なa-haが欠けていることを願っています. ヘルプ?

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

qt4 - Qt4では、フォーカスが失われたかどうかをウィジェット内から知る方法はありますか?

Qt 4の知識を深めるために、いくつかの簡単なウィジェットを設計しようとしています(これは、デスクトッププログラミングの最初の試みであり、Web開発のバックグラウンドから来ています)。

これらのウィジェットの1つは、ラベルと、ラベルをクリックするとポップアップするツールウィンドウから形成されます。

私の質問は、元のウィジェットがマウスのフォーカスを失ったとき(つまり、ユーザーがポップアップまたはラベル内以外の場所をクリックしたとき)を認識して、ポップアップを非表示にする方法に関連しています。

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

c# - WPF のポップアップはすぐにフォーカスを失い、閉じます

私はWPFポップアップの問題に頭を悩ませてきました.誰かが私を助けてくれることを望んでいます:)概要は次のようになります:

私たちのアプリは UIObjects のリストを保存します。これらはビューポート 3d (メンバー UIRenderObject を介して、その上にビットマップを持つ平らな正方形のメッシュ) とツリービュー (メンバー TreeViewItem を介して) に表示される要素を表します。

いずれの場合も、オブジェクトが右クリックを検出すると、ポップアップを開こうとします。そのためのコードは、あなたが得ることができるのと同じくらい簡単です:

ビューポートをクリックすると、すべてが期待どおりに機能します。ポップアップが開き、フォーカスが失われるか、選択が行われるまで開いたままになります。ただし、ツリー ビューでは、ポップアップはフォーカスを失い、すぐに閉じます。

フォーカスを明示的に設定し、PlacementTarget を明示的に設定し、ポップアップを開く呼び出しの前後にマウス イベントを処理済みとしてマークし、ポップアップを「StaysOpen」としてマークし、その他多数のことを試みましたが、それでもすぐに閉じます。 .

どんな助けでも大歓迎です。前もって感謝します!

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

wpf - そのダンwpfポップアップを消すにはどうすればよいですか?

ポップアップを使用すると、ぶらぶらしているようです。以下のコードでは、コントロール テンプレートをオーバーライドしてポップアップを textBox にアタッチし、TextBox にフォーカスがあるときにポップアップを表示します。画面上の次の要素にタブで移動すると、ポップアップは消えますが、別のアプリケーションに Alt キーを押して移動すると、ポップアップはフォアグラウンドに残ります。どうすればそれを取り除くことができますか?

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

jquery - jquery: 内部に入力がある LI、フォーカスが LI を離れて完全に子になったときに LI を非表示にする方法

内部に LI を含む UL があります。UL をクリックすると、その内部の LI がフェードインします。Li の内部には入力 (検索フォーム) があり、その隣には、検索したいウェブサイトのセクション (両方とも LI 内)

フォーカスがLIとその中のすべて(選択入力、検索入力)を離れると、フェードアウトするようにしようとしています。しかし、今私のコードでは、ULをクリックしてLIをフェードインするとフェードインし、検索入力をクリックしますが、LI内の他の入力をクリックすると(入力を選択) 、LI が点滅し、検索入力をもう一度クリックすると、LI がフェードアウトします... GAH! LI とその中のすべてにフォーカスがなくなったときに LI をフェードアウトさせたいだけです。どんな助けでも大歓迎です。

html:

jquery:

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

c# - WinForms Webブラウザコントロールはリフォーカスを強制しますか?

ボタンを繰り返しクリックする必要がある Web プロセスを自動化しようとしています。コードがそのボタン (フォームにある WebBrowser コントロールから取得した HtmlElement) をクリックすると、アプリケーション、より具体的には WebBrowser コントロールにフォーカスが戻ります。このプロセスをより適切に自動化して、プロセスの実行中にユーザーが他のことを実行できるようにしたいと考えていますが、ウィンドウがフォーカスを得ているために最小化を解除している場合、それは起こりません。

クリックに関連付けられたコードは次のとおりです。

私も button.RaiseEvent("onclick") を試してみましたが、まったく同じ結果が得られ、フォーカスの問題などがあります。

また、フォームを非表示にしようとしましたが、InvokeMember/RaiseEvent メソッドが呼び出されると、作業していたものはすべてフォーカスを失いますが、フォームが表示されないため、フォーカスがどこにも行かないようです。

Web ブラウザに関する唯一のデフォルト以外のことは、URI が自分のページに設定され、ScriptErrorsSuppressed が True に設定されていることです。