我想将标签设置为图形。我测试了这段代码:
private static final ImageView livePerformIcon;
static
{
livePerformIcon = new ImageView(MainApp.class.getResource("/images/Flex.jpg").toExternalForm());
}
final Label label = new Label();
label.setStyle("-fx-background-image: url(\"/images/Flex.jpg\");");
livePerformIcon.setFitHeight(20);
livePerformIcon.setFitWidth(20);
label.setGraphic(livePerformIcon);
但我没有看到任何图像。
我发现使它起作用的唯一方法是:
label.setStyle("-fx-background-image: url(\"/images/Flex.jpg\");");
有没有办法解决这个问题?
最佳答案
不确定,但 AFAIK 控件应该在 JavaFX 应用程序线程上创建,但是您正在静态初始化程序中创建 ImageView,我不确定它是否在应用程序线程上执行。
此外:你真的希望 livePerformIcon 是静态的???
关于javafx - 将图形设置为标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22606257/