回答編集履歴
2
ひとつ前の修正、コード例のが置き換わってませんでした\.\.\.
answer
CHANGED
@@ -17,7 +17,7 @@
|
|
17
17
|
public void initialize(URL url, ResourceBundle rb) {
|
18
18
|
TableViewSelectionModel<TableRecord> tableViewSelectionModel = tableView.getSelectionModel();
|
19
19
|
tableViewSelectionModel.setSelectionMode(SelectionMode.MULTIPLE);
|
20
|
-
tableView.
|
20
|
+
tableView.setOnMousePressed(evt -> {
|
21
21
|
// その時選択した行のインデックスを取得
|
22
22
|
ObservableList<Integer> indices = tableViewSelectionModel.getSelectedIndices();
|
23
23
|
// 以前選択したインデックスを選択状態にする
|
1
setOnMouseClickedをsetOnMousePressedに置き換えました。
answer
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
別の行が選択されたときに、記録された選択行を選択状態にします。
|
3
3
|
|
4
4
|
コード例は、最低限の実装で、動作がエレガントではないのですが、Ctrlキー無しで複数選択はできています。
|
5
|
+
(追記)`setOnMousePressed`にするとエレガントでないのが解消されたのでコード例を修正しました。詳しくは、[履歴](https://teratail.com/questions/history-reply/74203)とコメント欄を参照してください。
|
5
6
|
あと解除のことも考えてません。
|
6
7
|
|
7
8
|
- コード例:選択行を記録して選択状態を自動で復元する
|