Tôi có danh sách nhân viên có tên tôi cần hiển thị trên hộp kết hợp để người dùng chọn. Các mã sau đây ám chỉ rằng tên trong danh sách thả xuống, nhưng khi tôi chọn một cái tên, văn bản hiển thị của kết hợp chứa danh tính đầy đủ các POJO, một chuỗi như "[email protected]"Hiển thị POJO với Hộp kết hợp JavaFX 2 mà không ghi đè phương thức toString()
cboEmployees.setCellFactory(new Callback<ListView<Employee>, ListCell<Employee>>()
{
@Override
public ListCell<Employee> call(ListView<Employee> p)
{
return new ListCell<Employee>()
{
@Override
protected void updateItem(Employee item, boolean empty) {
super.updateItem(item, empty);
if (item != null)
{
setText(item.getName());
}
}
};
}
});
Is có cách nào để làm cho văn bản được hiển thị cũng hiển thị tên đã chọn mà không ghi đè phương thức toString() của POJO không?
Làm việc một cách hoàn hảo, cảm ơn. – etercap
Điều này dường như chỉ hoạt động nếu ComboBox không thể chỉnh sửa - đối với ComboBox có thể chỉnh sửa, trường văn bản (trình chỉnh sửa) không tuân theo nút trình kết xuất ô được chỉ định - nó vẫn sử dụng .toString(). Bất cứ ai biết làm thế nào để làm điều này? –
viên ngọc - bạn đã làm ngày của tôi, nhiều lần, cảm ơn rất nhiều! Hoạt động như charme :) – bully