我正在使用一个自定义控件,但没有得到预期的结果,我不确定为什么。
基本上,该控件是窗格上的ImageView,Label和2个按钮,但是我的image属性显示为“ User Agent Stylesheet”而不是“ Image”
这是我的控制代码
public class Gallery extends Pane {
@FXML
private ImageView imageView;
@FXML
private Button previousButton;
@FXML
private Button nextButton;
@FXML
private Label captionLabel;
public StringProperty caption = new SimpleStringProperty();
public ObjectProperty<Image> image = new SimpleObjectProperty<>();
public Gallery() {
try {
FXMLLoader l = new FXMLLoader(getClass().getResource("/fxml/slide.fxml"));
l.setController(this);
l.setRoot(this);
l.load();
}
catch (IOException e) {
e.printStackTrace();
}
}
@FXML
private void initialize() {
imageView.imageProperty().bindBidirectional(image);
captionLabel.textProperty().bindBidirectional(caption);
}
public String getCaption() {
return caption.get();
}
public StringProperty captionProperty() {
return caption;
}
public void setCaption(String caption) {
this.caption.set(caption);
}
public Image getImage() {
return image.get();
}
public ObjectProperty<Image> imageProperty() {
return image;
}
public void setImage(Image image) {
this.image.set(image);
}
}
这里是FXML
<fx:root type="javafx.scene.layout.Pane" xmlns="http://javafx.com/javafx/8.0.121" xmlns:fx="http://javafx.com/fxml/1">
这是我得到的结果
这是我想要得到的结果