TableView에 목록을 선택하기
- TableView 키보드 방향키로 이벤트 호출
- TableView 마우스 클릭 이벤트 호출
fxml에서 TableView 생성 후 table 이름으로 선언
table의 ChangeListener로 table의 선택 시 변경이 생기면 이벤트가 발생
table의 setOnMouseClicked로 table 마우스 클릭 이벤트 발생
ChangeListener와 setOnMouseClicked를 두 개 동시에 등록 시 키보드로 목록을 변경하면 두 개의 이벤트가 다 발생한다.
키보드와 마우스 클릭 이벤트를 둘다 적용하려면 ChangeListener 이벤트만 등록
마우스 클릭 이벤트만 발생하고 싶으면 onMouseClick 이벤트만 등록
@FXML private TableView<UserVO> table;
private init() {
table.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<UserVO>() {
@Override
public void changed(ObservableValue<? extends UserVO> observable, UserVO oldValue, UserVO newValue) {
// 메소드 호출
if(newValue != null){
userSearch(table.getSelectionModel().getSelectedIndex());
}
}
}
table.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
if(table.getSelectionModel().getSelectedItem() != null) {
userSearch(table.getSelectionModel().getSelectedIndex());
}
}
}
}
private void userSearch() {
// ...
}
'JavaFX' 카테고리의 다른 글
[JavaFX] TreeTableView, JFXTableView 만들고 데이터 저장하기 (0) | 2020.07.23 |
---|---|
[JavaFX] JPA Hibernate JDBC-90611:Specified column name was not found. - 컬럼명 (0) | 2020.07.21 |
[JavaFX] 윈도우 로그인 화면 제목 타이틀바 없애고 화면 이동 드래그 하기 (0) | 2020.07.13 |
[JavaFX] 자바FX ComboBox Event 데이터 저장, 데이터 선택 (0) | 2020.07.06 |
[JavaFX] 자바FX + Hibernate CRUD 데이터 저장, 삭제, 업데이트 (0) | 2020.07.03 |