GWTでドラッグアンドセレクトアプリケーションを作成し、セルテーブルまたはグリッドをたとえば20*100列*行にしたい。マウスで長方形のようなものをドラッグしてその領域のすべてのセルを選択できるように、または各セルにイベントを発生させてそれぞれに同じIDを割り当てることができるように、イベントを追加したいと思います。その背後にある主なアイデアは、Excelシートの選択のように、選択したすべてのセルを1つにドラッグしてグループ化することにより、選択を実行することです。誰かがこれで私を助けることができますか?
質問する
764 次
1 に答える
1
私はかつてGWTウィジェットを実装して、テーブルの長方形の領域を「選択」できるようにしました。基本的には、GridまたはFlexTableをサブクラス化し、さまざまなマウスイベントハンドラー(マウスダウン、マウスアップ、マウスアウト、マウスオーバー)ですべてのロジックを実行するという考え方でした。
私が導入しなければならなかった唯一のマイナーなハックは、マウスイベントのセルを取得する方法でした。クリックイベントに対して機能するHTMLTable#getCellForEventメソッドがありますが、このメソッドの実装を調べたところ、実際にはどのイベントでも機能することがわかったので、マウスイベントベースのセルを取得するための独自のメソッドを実装しました。言及された実装について。
HTMLTable#getEventTargetCellを使用してこれを実現することも可能かもしれません
于 2012-06-23T09:25:21.413 に答える