在TilePane上的imageview顶部添加标签

顶RS

我当时正在制作一个应用程序,允许用户以图形方式从游戏中创建自定义商店,但是我遇到了麻烦,因为我想添加标签来显示商店中有多少物品,但是由于imageview已经位于“平铺”窗格中,它在其旁边创建了一个标签,但我想在其顶部创建一个标签。

宝石海

您可以制作商品标签,并将图像作为图形节点应用到标签。选择项目后,您可以label.setText("text string")在标签上调用以根据需要更改标签的文本或CSS样式。如果项目需要交互,则可能需要制作按钮而不是标签。

下面的方法通过使用contentDisplay="TOP" graphicTextGap="-40.0"组合-fx-padding: 0 0 20 0;文本来定位其中的一些技巧,这有点违反直觉。

给我看看

<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.image.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.paint.*?>

<StackPane id="StackPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="-1.0" prefWidth="-1.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2">
  <children>
    <TilePane hgap="10.0" prefColumns="3" prefHeight="-1.0" prefRows="1" prefWidth="-1.0" style="-fx-background-color: linear-gradient(palegreen, forestgreen);&#10;-fx-padding: 20px;" vgap="10.0">
      <children>
        <Label contentDisplay="TOP" graphicTextGap="-40.0" style="-fx-font-size: 20px;&#10;-fx-text-fill: gold;&#10;-fx-padding: 0 0 20 0;" text="Roast Beef">
          <graphic>
            <ImageView fitHeight="0.0" fitWidth="0.0" mouseTransparent="true" pickOnBounds="true" preserveRatio="true">
              <image>
                <Image url="http://icons.iconarchive.com/icons/rockettheme/ecommerce/256/piggy-bank-icon.png" backgroundLoading="true" />
              </image>
            </ImageView>
          </graphic>
        </Label>
        <Label contentDisplay="TOP" graphicTextGap="-40.0" style="-fx-font-size: 20px;&#10;-fx-text-fill: gold;&#10;-fx-padding: 0 0 20 0;&#10;-fx-border-color: palegoldenrod;&#10;-fx-border-width: 5px;&#10;-fx-border-radius: 10px;&#10;-fx-border-insets: -5px;&#10;" text="Bag 'o' Love">
          <graphic>
            <ImageView fitHeight="0.0" fitWidth="0.0" mouseTransparent="true" pickOnBounds="true" preserveRatio="true">
              <image>
                <Image url="http://icons.iconarchive.com/icons/rockettheme/ecommerce/256/bag-icon.png" backgroundLoading="false" />
              </image>
            </ImageView>
          </graphic>
        </Label>
        <Label contentDisplay="TOP" graphicTextGap="-40.0" style="-fx-font-size: 20px;&#10;-fx-text-fill: gold;&#10;-fx-padding: 0 0 20 0;" text="Show Me">
          <graphic>
            <ImageView fitHeight="0.0" fitWidth="0.0" mouseTransparent="true" pickOnBounds="true" preserveRatio="true">
              <image>
                <Image url="http://icons.iconarchive.com/icons/rockettheme/ecommerce/256/wallet-icon.png" backgroundLoading="true" />
              </image>
            </ImageView>
          </graphic>
        </Label>
      </children>
    </TilePane>
  </children>
</StackPane>
<!-- icon usage license: 
     Creative Commons with attribution,
     back link to http://www.rockettheme.com required -->

这可能不是实现所需目标的最佳方法,因为您可以创建从Region派生的自定义ShopItem组件。使用自定义组件,您将提供布局逻辑,以在您的商品图片上方在内部对文本(以及所需的其他图形)进行分层。这种布局逻辑应该比上面提供的机制更直观。

另一种方法是使每个商店商品都成为包含图像和文本标签的AnchorPane。

自定义组件方法虽然更灵活,但有点复杂,因此我在这里仅提供了基于标签的简单解决方案。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在TilePane上的imageview顶部添加标签

来自分类Dev

如何在渐变顶部添加标签?

来自分类Dev

在动画gif上添加标签和imageview并共享动画gif

来自分类Dev

在Seaborn的地块上添加标签

来自分类Dev

通过循环在表单上添加标签

来自分类Dev

在单选按钮上添加标签

来自分类Dev

在按键上,动态添加标签?

来自分类Dev

在每行的特定短语上添加标签

来自分类Dev

在视频 iOS 上添加标签

来自分类Dev

尝试在面板上添加标签

来自分类Dev

在 X 轴上添加标签

来自分类Dev

在Apple Watch情节提要中的图像顶部添加标签

来自分类Dev

如何在flutter的按钮顶部添加标签

来自分类Dev

如何在Google地图顶部添加标签栏?

来自分类Dev

如何以编程方式在imageView底部添加标签?

来自分类Dev

在PyQt5上的标签内添加标签

来自分类Dev

PyQt:添加标签

来自分类Dev

在有条件的情况下,在标签的顶部添加标签。

来自分类Dev

在力图D3 JS上添加标签

来自分类Dev

如何在bokeh中的点上添加标签?

来自分类Dev

无法使用Xamarin.forms在图像上添加标签?

来自分类Dev

在iOS的不同位置的UICollectionView单元上添加标签

来自分类Dev

在D3散点图圆上添加标签

来自分类Dev

使用matplotlib在图例上添加标签不起作用

来自分类Dev

无法在资源AWS :: ECS :: Service上添加标签

来自分类Dev

如何在子图的轴上添加标签

来自分类Dev

在使用熊猫制作的地块上添加标签和标题

来自分类Dev

如何在networkx的图形中的节点上添加标签?

来自分类Dev

如何在github个人资料上添加标签?