Вы можете использовать TitledPane
s:
Map<String, String> questions = new HashMap();
questions.put("Question 1", "Lorem ipsum dolor sit amet, consectetur"
+ "adipiscing elit, sed do eiusmod tempor incididunt ut labore"
+ "et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud"
+ " exercitation ullamco laboris nisi ut aliquip ex ea commodo"
+ " consequat. Duis aute irure dolor in reprehenderit in voluptate"
+ " velit esse cillum dolore eu fugiat nulla pariatur. Excepteur"
+ " sint occaecat cupidatat non proident, sunt in culpa qui"
+ " officia deserunt mollit anim id est laborum.");
questions.put("Question 2", "Not answered yet");
VBox content = new VBox();
questions.forEach((key, value) -> {
Label label = new Label(value);
TitledPane tp = new TitledPane(key, label);
tp.setExpanded(false);
label.setWrapText(true);
content.getChildren().add(tp);
});
Возможно, вы захотите изменить стиль заголовка с помощью таблицы стилей CSS, добавив в сцену следующую таблицу стилей:
.titled-pane > .title {
-fx-background-color: transparent transparent transparent;
}