【发布时间】:2016-12-08 21:16:23
【问题描述】:
我想为ComboBox 中的每个项目添加一张照片,因此当用户将鼠标悬停在ComboBox 中该项目的名称上时,将显示该项目的照片。
这是我的代码:
lights.setConverter(new StringConverter<Light>() {
@Override
public String toString(Light object) {
return object.getName();
}
@Override
public Light fromString(String string) {
return null;
}
});
lights.setItems(FXCollections.observableArrayList
(new Light ("Incandescent", 5.23),
new Light ("Halogen", 5.75),
new Light ("fluorescent",7.29),
new Light ("Compact fluorescent bulbs",4.83),
new Light ("LED",4.83)));
lights.setPromptText("Please select a light");
lights.setPrefWidth(100);
lights.valueProperty().addListener((obs, oldVal, newVal) -> {
String selectionText = "The price for the " + newVal.getName() + " light is : $" + newVal.getPrice();
lightNamePrice.setText(selectionText);
});
private class Light {
private String name;
private Double price;
private Double getPrice() {
return price;
}
private String getName() {
return name;
}
private Light(String name, Double price) {
this.name = name;
this.price = price;
}
}
有人有什么想法吗?我是 JavaFX 的新手,所以我能得到的任何帮助都会很棒。
【问题讨论】:
标签: java javafx combobox tooltip javafx-8