Tôi hiện có hai bảng xem trước trong một màn hình, kết quả trong cả hai TableViews đều có các hàng mà người dùng có thể chọn.JavaFX8: Cách tạo trình nghe để chọn hàng trong Tableview?
Bây giờ, tôi chỉ muốn một hàng được chọn cùng một lúc (bất kể bạn chọn TableView nào). Tôi đã suy nghĩ về một số loại người nghe mà bỏ chọn hàng khác khi một hàng được chọn. Đây là thiết lập ban đầu của tôi:
Bước 1 Tìm kiếm một cách để ràng buộc một phương pháp để việc lựa chọn một hàng (không có cái gì đó như tableview.setOnRowSelected(method)
)
Bước 2 Tạo phương pháp mà hoạt động như một loại người nghe: khi một hàng được chọn, bỏ chọn hàng khác (tôi biết cách thực hiện phần này)
Class1 selectedObject1 = (Class1)tableview1.getSelectionModel().getSelectedItem();
Class2 selectedObject2 = (Class2)tableview2.getSelectionModel().getSelectedItem();
if(selectedObject1 != null && selectedObject2 != null) {
tableview1.getSelectionModel().clearSelection();
}
Vì vậy, bước một là vấn đề. Tôi đã suy nghĩ về một danh sách quan sát mà trên đó một người nghe có thể được tạo ra, và sau đó thêm hàng đã chọn vào danh sách. Khi điều này xảy ra, người nghe có thể gọi phương thức. Bất cứ ai cũng có manh mối về cách thực hiện điều này?
Bất kỳ trợ giúp nào được đánh giá cao.
Hoạt động hoàn hảo, cảm ơn bạn! Đối với những người khác muốn sử dụng điều này: chỉ cần đặt mã này vào phần khởi tạo mã của bạn. Trong trường hợp của tôi, đây là một bộ điều khiển của một tập tin FXML. – bashoogzaad