JavaFXのTableView
から選択した項目を取得するにはどうすればよいですか?JavaFX TableViewから選択項目を取得する
私は現在
ObservableList selectedItems = taview.getSelectionModel().getSelectedItems();
を使用していますが、それは私の選択モデルで項目選択された1つを返しません。
JavaFXのTableView
から選択した項目を取得するにはどうすればよいですか?JavaFX TableViewから選択項目を取得する
私は現在
ObservableList selectedItems = taview.getSelectionModel().getSelectedItems();
を使用していますが、それは私の選択モデルで項目選択された1つを返しません。
ここで、Person
という名前のデータモデルクラスがあるとします。この方法:
Person person = taview.getSelectionModel().getSelectedItem();
System.out.println(person.getName());
TableView
は鋳造を避けるために、型引数としてPerson
を取る必要があることに注意:
@FXML
private TableView<Person> taview;
または
TableView<Person> taview = new TableView<>();
あなたの行が選択されたとき、あなたは1を返します。 Person
インスタンス。その後、そのインスタンスであなたが望むことをしてください。
このコードを使用すると、JAVAFX TABLEVIEW Cellから選択した値を取得できます。
おかげで...ここ
このコードは私のために働いた。しかし、私は別の行を選択するときにのみ動作します。同じ行が選択されていてもテーブルセルが選択されるたびにこのコードを実行するにはどうすればいいですか? – viper
ポップアップメニューのようにこのリスナー内でマウス座標を取得する方法はありますか? – leobelizquierdo
@pranishres
は@Java男のコードに触発されたセル選択変更リスナー(行が変化していない場合でも)、のための私の試みです:
tableView.getSelectionModel().setCellSelectionEnabled(true);
ObservableList selectedCells = tableView.getSelectionModel().getSelectedCells();
selectedCells.addListener(new ListChangeListener() {
@Override
public void onChanged(Change c) {
TablePosition tablePosition = (TablePosition) selectedCells.get(0);
Object val = tablePosition.getTableColumn().getCellData(tablePosition.getRow());
System.out.println("Selected Value" + val);
}
});
私のために働いた;)ありがとう –
です。
Employee employee= tblView.getSelectionModel().getSelectedItem();
txtEmployeeName.setText(employee.getName());
なぜ受け入れられた答えを繰り返す? – kleopatra
**ありがとうございます♪ – user2536158
大歓迎です! :) –
すばやく簡単です。 – rainer