패널에 두 개의 표가 있습니다. 일부 셀에서 첫 번째 표를 클릭하면 행이 선택됩니다. 그리고 일부 셀에서 두 번째 테이블을 클릭하면 행이 선택됩니다.현재 셀을 클릭 한 테이블을 가져 오는 방법은 무엇입니까?
이제, 마지막으로 클릭 한 테이블을 어떻게 알 수 있습니까? 두 테이블에 모두 isRowSelected
으로 시도 했으므로 둘 다 반환되므로 마지막으로 클릭 한 테이블을 찾을 수 없습니까?
누군가 나를 도울 수 있습니까?
패널에 두 개의 표가 있습니다. 일부 셀에서 첫 번째 표를 클릭하면 행이 선택됩니다. 그리고 일부 셀에서 두 번째 테이블을 클릭하면 행이 선택됩니다.현재 셀을 클릭 한 테이블을 가져 오는 방법은 무엇입니까?
이제, 마지막으로 클릭 한 테이블을 어떻게 알 수 있습니까? 두 테이블에 모두 isRowSelected
으로 시도 했으므로 둘 다 반환되므로 마지막으로 클릭 한 테이블을 찾을 수 없습니까?
누군가 나를 도울 수 있습니까?
이것이의 MouseListener에서 또는 ListSelectionListener에 결정해야하는 경우 나도 몰라,하지만 간단한 해결책이 유사합니다
table1.addXxxListener(new XxxListener() {
// here, you know it's table 1
}
table2.addXxxListener(new XxxListener() {
// here, you know it's table 2
}
그것을 할 수있는 또 다른 방법 : 각 테이블에 대해 다른 리스너를 사용 이벤트의 소스를 확인하는 것입니다 : 이것이 사실 물론
new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
if (e.getSource()==table1.getSelectionModel()) {
// Event comes from table1
} else if (e.getSource()==table2.getSelectionModel()) {
// Event comes from table2
}
}
}
경우 및 선택 모델은
을 (자신하는 ListSelectionModel를 설정하지 않은 경우 어떤 경우인지) 단일 테이블에서 사용하는 경우에만
몇 가지 코드가 도움이 될 것입니다. 클릭 이벤트로 시도해 보셨습니까? – magodiez