我可以对ListView在两种不同数据类型之间进行哪些更改?

时间:2018-05-16 18:58:58

标签: java listview javafx

这是我的listView:

public ListView<Consulta> lstViewLista;

这里我希望我的listView就像(listView<Consulta>):

public void btnDireitaOnAction(ActionEvent event){
    ObservableList<Consulta> consultaData = FXCollections.observableArrayList();
    try {
        consultaData.addAll(ConsultaDAO.buscarPorData(Agenda.getData()));
    } catch (Exception e) {
        System.err.println("Erro: Impossível encontrar as consultas.");
        e.printStackTrace();
    }
    lstViewLista.setItems(consultaData);
}

但是我希望我的listView像listView<Paciente>

public void btnDireitaOnAction(ActionEvent event){
ObservableList<Paciente> pacienteData = FXCollections.observableArrayList();
try {
    pacienteData.addAll(PacienteDAO.buscarPorData(Agenda.getData()));
} catch (Exception e) {
    System.err.println("Erro: Impossível encontrar os pacientes.");
    e.printStackTrace();
}
lstViewLista.setItems(pacienteData);

}

我如何在它们之间进行更改?有人帮助T_T

1 个答案:

答案 0 :(得分:0)

您将lstViewLista定义为类型ListView的{​​{1}},因此更改其类型可能并不明智。为什么不拥有两个<Consulta>,一个类型为ListView,另一个类型为<Consulta>,就像这样?

<Paciente>

你可以通过使用ListView<Consulta> lstViewConsulta; ListView<Paciente> lstViewPaciente; 或使用setManaged()和setVisible()添加和删除父节点来切换显示的节点:

Node.getChildren()