JavaFX로 테이블을 만들고 있습니다. 모든 행에는 텍스트가 있습니다. 한 행에는 그 셀의 텍스트에 여러 색상이 있기 때문에 그래픽이 있습니다.JavaFX - 다른 행보다 높은 TableColumn 그래픽
departTimeCol.setCellFactory(column -> new TableCell<Ride, String>() {
@Override
protected void updateItem(String item, boolean empty) {
super.updateItem(item, empty);
setText(item);
if(item != null && ! empty){
if(item.matches("^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]\\s\\+[\\d]")) {
Text timeText = new Text(item.split(" ")[0].trim() + " ");
Text delayText = new Text(item.split(" ")[1].trim());
delayText.setFill(Color.RED);
TextFlow flow = new TextFlow(timeText, delayText);
setText(null);
setGraphic(flow);
}
}
}
});
결과는 다음과 같습니다 :
빨간색이 가진 행이 그래픽입니다 특정 조건 (일부 작품)에 해당하는 경우
코드에만 적용 . 다른 모든 행은 텍스트를 포함합니다. 그래픽을 포함하는 행에 동일한 높이를 부여하려면 어떻게합니까?
답장을 보내 주셔서 감사합니다. 나는 당신의 해결책을 시도했지만, +2는 빨간색이되지 않습니다 :/ – Matthijs
Oh nvm. 내 잘못이야. setPrefHeight 설정이 효과를 발휘했습니다! – Matthijs