プログラミングのシナリオでは、私のGWTテキストボックスが集中しているかどうかを確認する必要がありました。私はブール値とフォーカスのペアを追加して終わりました。& BlurHandlerを手動でフォーカス状態にしておくと、なぜフォーカス可能なコンポーネントがgwtにフォーカスされているかを返すメソッドがないのだろうか?GWTにisFocused()がないのはなぜですか?
答えて
数年前まで(Firefox 3、Safari 4、ゲームの最後のプレイヤーを指し示して、サポートが追加されているdocument.activeElement
)までは、クロスブラウザーの方法がなかったので。
GWTはSafari 3(Safari 2のサポートは廃止されていると思われます)とFirefox 2(DevModeプラグインはありませんが、Operaはサポートされていません。 DevModeもありません)、サポートされているすべてのブラウザで機能するような機能を提供することはできません。
最後に、私はこれまで問題追跡ツールの強化を依頼した人はいないと思いますが(少なくとも私は見つけられませんでした)。あなたが言ったように、あなたはすでにFocusHandler/BlurHandler(これはクロスブラウザで動作します)を使用して、今日それを行うことができます。
[1] http://code.google.com/webtoolkit/doc/latest/FAQ_GettingStarted.html#What_browsers_does_GWT_support? GWT 2.1.0でサポート(user.agent = gecko、gecko1_8)が削除されていて、IE9のリストは表示されていないFirefox 1.0が一覧表示されているため、そのページは少し古いですGWT 2.3.0で追加されていますが、Operaの最新バージョンのみがサポートされていると思います。
どのブラウザがそれをサポートしているのかについては、MDN:https://developer.mozilla.org/en-US/docs/Web/API/document.activeElement を参照してください。今日、すべての主要なブラウザがサポートしているようですIE 4+、Chrome 2+など)、それを使用することはかなり安全です。 – PhiLho
どのウィジェットにフォーカスがあるのかわかりませんが、あなたはすでに解決策を持っています。 GWTの初心者として、私は私の解決策を共有することを提案する:
- は、ウィジェットの「focusedWidget」
作成フォーカスハンドラのように、オブジェクト内のprivateフィールドを宣言し、ここではクラスのTextBoxです。 OnFocusブロックでは、ウィジェットを 'focusedWidget'に割り当てます。この種のイベントは、フォーカスできるすべてのウィジェットに追加できます。 ![step 2] [2]
- それだけです。あなたが結んだすべてのウィジェットは、フォーカスされるたびにfocusWidgetに設定されます。次に、 'focusedWidget'を使用して、どの現在のウィジェットがフォーカスされているかを判別できます。 ![ステップ3] [3]
JUnit
でテストします。 see image of snippet here 願っています。
これは便利ですが、各項目にもぼかしハンドラを追加する必要があります。現在フォーカスのない項目の状況を検出し、focusedWidgetの値をnullに設定できます。 – Joel
- 1. なぜIsFocusedがラベルに表示されないのですか
- 2. なぜGWTが動作しないのですか?gwt.codesvr = 127.0.0.1:9997
- 3. GWT Cellウィジェットはなぜですか?
- 4. GWTアプリケーションがブラックベリーOS7でクラッシュするのはなぜですか?
- 5. 小さなコードの変更がappengine(GAE/GWT)で有効にならないのはなぜですか?
- 6. なぜGWT PopupPanelsとDialogBoxはCSS3Pieを好まないのですか?
- 7. GWTおよびスクリプト#-styleフレームワークが支配的にならなかったのはなぜですか?
- 8. なぜGWT DevModeのシリアル化が100倍遅くなるのですか?
- 9. IEがGWT Window.open()でPDFファイルのダウンロードダイアログを表示しないのはなぜですか?
- 10. GWT、Eclipse、Java 1.6.0_14でブレークポイントが無視されるのはなぜですか?
- 11. PHPがlocalstorageにタップできないのはなぜですか?
- 12. Salesforceには、なぜスキンビルダーにOpportunityContactRoleがないのですか?
- 13. MVVMツリービューでIsFocused
- 14. gwt - 2つの要素タイプがあるのはなぜですか?
- 15. 私のjsonStoreにデータがないのはなぜですか?
- 16. Android:Spinnerに標準のデザインがないのはなぜですか?
- 17. Silverlightのシステムオブジェクトにメソッドがないのはなぜですか?
- 18. 私のC#にSystem.ServiceProcessライブラリがないのはなぜですか?
- 19. Javaに「ディープ」ワイルドカードのインポートがないのはなぜですか?
- 20. 私のコンソールに出力がないのはなぜですか?
- 21. ボールが窓の中央にないのはなぜですか?
- 22. 私のUIBarButtonItemにタイトルがないのはなぜですか?
- 23. 数値セルに.Characters()プロパティがないのはなぜですか?
- 24. immutable.jsクラスに "new"が必要ないのはなぜですか?
- 25. Swiftに「new」キーワードが必要ないのはなぜですか?
- 26. Kotlinに並行性キーワードがないのはなぜですか?
- 27. JFreeChartにテキストがないのはなぜですか?
- 28. C++に "NULL参照"がないのはなぜですか?
- 29. Windows UniversalアプリケーションにXmlNode.SelectSingleNodeメソッドがないのはなぜですか?
- 30. MOVWFがステータスレジスタに影響しないのはなぜですか?
ここに誰もこれに答えることはできません。それを設計したGoogleからの人々の一人が来ることがない限り、それはかなり起こりそうにない。 –
彼らはあなたが思っている以上のものを持っています –
FocusHandlerを使用すると何が問題になりますか? – helpermethod