タグにレンダリングするセルの束を持つ CellTable があり<input>
ます。入力間のタブ移動は、CellTable の複雑なイベント処理のために壊れています。タブが各セルに を促しているように見えますfinishEditing
が、それが今度はフォーカスを独占し、フォーカスが次の に到達することはありません<input>
。
各入力に tabIndex を設定しても、動作に影響はないようです。
通常のタブ機能を復元するにはどうすればよいですか?
タグにレンダリングするセルの束を持つ CellTable があり<input>
ます。入力間のタブ移動は、CellTable の複雑なイベント処理のために壊れています。タブが各セルに を促しているように見えますfinishEditing
が、それが今度はフォーカスを独占し、フォーカスが次の に到達することはありません<input>
。
各入力に tabIndex を設定しても、動作に影響はないようです。
通常のタブ機能を復元するにはどうすればよいですか?
私は最近これを理解しました。迷惑ですが、魔法を見つけたら簡単です。
cellTable.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED)
これにより、CellTableで通常のタブナビゲーションが実行されます。
MVP フレームワークを使用している場合、KeyboardSelectionPolicy の無効化がすべてのビューで機能するとは限りません。GWT は、セル内の入力フィールドではなくセルを選択します。
これが私のアプリケーションで使用した解決策です: GWT CellTable への TAB コントロールの追加
値を変更するときにタブを使用する方法を理解しようとしている将来これを見ている人は、Ben Imp が提案することを実行してから、カスタム コンポーネントで super.finishEditing への参照を削除してください。場合によっては、これは、finishEditing をオーバーライドして何もしないことを意味します。
セルの値を変更しない場合、Ben Imp のソリューションは正常に機能しますが、値を変更してタブで次のセルに移動しようとすると、フォーカスが失われ、ビューの最初の要素から始まります。この不適切な動作に対する解決策は見つかりませんでした。