- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我认为这个问题就像你忘记了代码中的分号一样。我正在创建一个列表以在表格 View 中显示,但只有一个项目
nombrepaciente
我没有得到,我不知道为什么 mi 表不只显示该项目。
这是我的 bean
public class CitaBeanTable {
public SimpleStringProperty nombrepaciente = new SimpleStringProperty();
public SimpleStringProperty hora = new SimpleStringProperty();
public SimpleStringProperty estado = new SimpleStringProperty();
public SimpleStringProperty notas = new SimpleStringProperty();
public String getHora() {
return hora.get();
}
public String getEstado() {
return estado.get();
}
public String getNotas() {
return notas.get();
}
public String getNombrePaciente() {
return nombrepaciente.get();
}
}
这是我的 Controller
public class CitasController implements Initializable {
@FXML private TableView<CitaBeanTable> tblCitas;
@FXML private TableColumn clnNombrePaciente;
@FXML private TableColumn clnHora;
@FXML private TableColumn clnEstado;
@FXML private TableColumn clnNotas;
ObservableList<CitaBeanTable> citasObservable;
private final ListChangeListener<CitaBeanTable> selectorTableCita =
new ListChangeListener<CitaBeanTable>() {
@Override
public void onChanged(ListChangeListener.Change<? extends CitaBeanTable> change) {
ponerCitaSeleccionada();
}
};
private void ponerCitaSeleccionada() {
//Do Something.
}
public CitaBeanTable getTablaCitaSeleccionada() {
if (tblCitas != null) {
List<CitaBeanTable> tabla =
tblCitas.getSelectionModel().getSelectedItems();
if(tabla.size() == 1) {
final CitaBeanTable competicionSeleccionada = tabla.get(0);
return competicionSeleccionada;
}
}
return null;
}
private void inicializarTablaCitas(){
clnNombrePaciente.setCellValueFactory(new PropertyValueFactory<CitaBeanTable, String>("nombrepaciente"));
clnHora.setCellValueFactory(new PropertyValueFactory<CitaBeanTable, String>("hora"));
clnEstado.setCellValueFactory(new PropertyValueFactory<CitaBeanTable, String>("estado"));
clnNotas.setCellValueFactory(new PropertyValueFactory<CitaBeanTable, String>("notas"));
citasObservable = FXCollections.observableArrayList();
tblCitas.setItems(citasObservable);
}
@Override
public void initialize(URL url, ResourceBundle rb) {
this.inicializarTablaCitas();
final ObservableList<CitaBeanTable> tablaCitaSel =
tblCitas.getSelectionModel().getSelectedItems();
tablaCitaSel.addListener(selectorTableCita);
List<CitaBean> arregloCitas = new ArrayList();
XMLParserCita xmlParser = new XMLParserCita();
XMLParserPaciente xmlParserPaciente = new XMLParserPaciente();
try {
arregloCitas = xmlParser.getCitasPorFecha(datePicker.getValue().toString());
for (int i=0; i<arregloCitas.size(); i++) {
CitaBeanTable citaTable = new CitaBeanTable();
// This method is working fine.
citaTable.nombrepaciente.
set(xmlParserPaciente.
getNombrePacientePorCodigo(arregloCitas.get(i).
getCodigopaciente().toString()));
citaTable.hora.set(arregloCitas.get(i).getHora());
citaTable.estado.set(arregloCitas.get(i).getEstado());
citaTable.notas.set(arregloCitas.get(i).getNotas());
citasObservable.add(citaTable);
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
这是我的 FXML:
<TableView fx:id="tblCitas">
<columns>
<TableColumn prefWidth="251.0" text="Paciente" fx:id="clnNombrePaciente" />
<TableColumn prefWidth="75.0" text="Hora" fx:id="clnHora" />
<TableColumn prefWidth="184.0" text="Estado" fx:id="clnEstado" />
<TableColumn prefWidth="180.0" text="Notas" fx:id="clnNotas" />
</columns>
</TableView>
我错过了什么吗?
最佳答案
您传递到 PropertyValueFactory 的值不正确:它需要与 get...() 方法匹配。
即你需要
clnNombrePaciente.setCellValueFactory(new PropertyValueFactory<CitaBeanTable, String>("nombrePaciente"));
(带有大写“P”)。
关于SceneBuilder 中的 JavaFX 和 TableView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22916711/
我是一名优秀的程序员,十分优秀!