0

Qooxdooテーブルウィジェットでセルをプログラムで選択してから、そのセルのエディターを起動したいと思います。

これまでのところ、私は次のことを理解することができました。次のようにセルを選択してフォーカスすることができます。

var pane = table.getPaneScroller(0);
var selectionModel = table.getSelectionModel();
selectionModel.resetSelection();
selectionModel.addSelectionInterval(row, row);
pane.setFocusedCell(col, row);

ただし、その後の呼び出しでtable.startEditing()はセルエディタは起動しません。セルがユーザーによって手動で選択された場合に機能します。

プログラムによる近似では失敗する、ユーザーによるセルの選択は何をしますか?

問題を示す例をまとめました。

4

1 に答える 1

2

私はstartEditing動作しないことに夢中になっているので、明らかなものを見ることができませんでした。フォーカス部分が完全に間違っていました。古いディスカッションスレッドからコピーしました。明らかに、それはあまりにも古すぎました。

今私はこれをやっています:

var selectionModel = table.getSelectionModel();
selectionModel.resetSelection();
selectionModel.addSelectionInterval(row, row);
table.setFocusedCell(col, row);
table.startEditing();

セルが含まれている行を選択することは厳密には必要ありませんが、選択されていない行でフォーカスされたセルはちょっと奇妙に見えます。

于 2012-12-14T13:00:57.907 に答える