Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
FXML(JavaFX)中的图像标记,如何使用css设置大小?_Java_Css_Javafx_Fxml - Fatal编程技术网

FXML(JavaFX)中的图像标记,如何使用css设置大小?

FXML(JavaFX)中的图像标记,如何使用css设置大小?,java,css,javafx,fxml,Java,Css,Javafx,Fxml,我正在学习将CSS与FXML结合使用,但在设置图像大小时遇到了问题。我有四张图片,我希望它们的大小都一样。但是我不能让CSS工作。我的FXML如下 <HBox styleClass="sidebar-item" > <ImageView styleClass="icon" preserveRatio="true"> <Image url="@assets/settings.png" />

我正在学习将CSS与FXML结合使用,但在设置图像大小时遇到了问题。我有四张图片,我希望它们的大小都一样。但是我不能让CSS工作。我的FXML如下

     <HBox styleClass="sidebar-item" >
          <ImageView styleClass="icon" preserveRatio="true">
              <Image url="@assets/settings.png" />
          </ImageView>
          <Label text="%settings" />
      </HBox>
实际上什么也没发生。大小保持不变。但是,如果在ImageView xml标记中添加requestedHeight=“20”和requestedWidth=“20”,则图像会调整大小

  <HBox styleClass="sidebar-item" >
      <ImageView styleClass="icon" preserveRatio="true">
          <Image url="@assets/settings.png" requestedHeight="20" requestedWidth="20"/>
      </ImageView>
      <Label text="%settings" />
  </HBox>


使用css不可能达到同样的效果吗?我找不到任何与requestedWidth相关的CSS标记,也不允许在图像标记上设置CSS类。只有ImageView标记。

不幸的是,
ImageView
唯一可设置样式的属性(除了从
节点继承的属性)是
图像
属性(尽管它比内部属性稍微复杂)。这意味着您不能通过CSS设置属性,例如
fitWidth
。您也不能通过CSS影响
图像本身,因为它甚至不可设置样式;最重要的是,要求的宽度/高度值在施工期间使用,不会随时间而改变。恐怕,除了编写包装类之外,您还必须继续使用FXML或Java来配置映像的大小。好吧,至少我知道不要再在上面浪费时间了。谢谢。不幸的是,
ImageView
的唯一可设置样式的属性是
image
属性,而不是从
Node
继承的属性(尽管它比内部的属性复杂一点)。这意味着您不能通过CSS设置属性,例如
fitWidth
。您也不能通过CSS影响
图像本身,因为它甚至不可设置样式;最重要的是,要求的宽度/高度值在施工期间使用,不会随时间而改变。恐怕,除了编写包装类之外,您还必须继续使用FXML或Java来配置映像的大小。好吧,至少我知道不要再在上面浪费时间了。谢谢
  <HBox styleClass="sidebar-item" >
      <ImageView styleClass="icon" preserveRatio="true">
          <Image url="@assets/settings.png" requestedHeight="20" requestedWidth="20"/>
      </ImageView>
      <Label text="%settings" />
  </HBox>