我正在用JavaFX制作应用程序。我正在Scene Builder中制作GUI
我有包含标签的AnchorPane。
我将图像和文本放置在标签上。
文本放置在图像之后,但是如果文本行过多,则不会在图像下方。
这是我在Scene Builder中拥有的东西:
如何实现呢?
编辑:
我试图将标签的包装属性绑定到图像,但是在Intellij Idea中出现错误:
lb_previewCard-是标签的fxid
PreviewImage-是ImageView的fxid
编辑2:
这是我在控制器中的代码:
@FXML private AnchorPane previewCard;
@FXML private Label lb_randomCard;
@FXML private ImageView previewImage;
@FXML
public void initialize(URL location, ResourceBundle resources) {
lb_previewCard.wrapTextProperty().bind(previewCard.prefWidthProperty());
}
我试图将“锚定窗格”的不同宽度属性分配给标签的
wrapTextPropery()
,而Intelij Idea出现如下错误:当我选择与包装标签有关的方法时,我只能使用其中三个:
编辑3:
我试图创建一个String变量,并给标签分配文本,但是该变量不能具有
bind()
这样的方法。private String textFromPreviewCard = lb_previewCard.getText();
最佳答案
编辑:我注意到我留下的第一个答案没有用。对于给您带来的任何不便,我深表歉意。我有好心意
从那时起,我一直在寻找答案,但不幸的是找不到。将文本换行属性绑定到其父级只会使其文本宽度动态适应其容器,而不会环绕其他节点。不确定是否要删除此答案,我将告诉您我要怎么做。
如果您的应用程序需要操纵文本的内容,那不是您想要的,但是我会在其他应用程序(例如Paint,Photoshop或Gimp)中使用文本换行来制作图像并将整个内容保存为图像。我认为,即使MS Word也会允许您这样做。然后保存图像,并让您的应用程序将包含文本的图像显示为ImageView。
我希望这至少可以有所帮助。希望这里有人会提供更多实用的答案。
关于java - 如何使用JavaFX在标签中的imageview周围放置文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55311564/