JavaFX自定义控件图像选择

时间:2018-09-16 09:14:29

标签: javafx controls fxml scenebuilder

我正在使用一个自定义控件,但没有得到预期的结果,我不确定为什么。

基本上,该控件是窗格上的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">

                               

这是我得到的结果

Unintended Result

这是我想要得到的结果

Intended Result

0 个答案:

没有答案