我在使用 JavaFX 时遇到了以下问题。
在 Java Scene Builder 中使用样式表重新定义工具提示样式。
在 Eclipse 中执行时重新定义工具提示样式,并使用场景构建器生成的 FXML 文件中包含的相同样式表
<stylesheets>
<URL value="@../style/myCSS.css" />
</stylesheets>
不起作用(任何其他属性重新定义都有效)。
使用代码指令在 Eclipse 中执行时使用相同样式表重新定义工具提示样式:
scene.getStylesheets().add(this.getClass().getResource("/style/myCSS.css").toExternalForm());
工作正常。
使用的样式表(myCSS.css):
.tooltip {
-fx-background-radius: 2 2 2 2;
-fx-background-color: linear-gradient(#FFFFFF, #DEDEDE);
}
.page-corner {
-fx-shape: " ";
}
AnchorPane {
-fx-background-color: firebrick;
}
使用的 FXML 文件:
<AnchorPane id="AnchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="91.0" prefWidth="200.0" xmlns:fx="http://javafx.com/fxml">
<children>
<Button layoutX="72.0" layoutY="35.0" maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" mnemonicParsing="false" text="Button">
<tooltip>
<Tooltip text="Tootip Text" />
</tooltip>
</Button>
</children>
<stylesheets>
<URL value="@../style/myCSS.css" />
</stylesheets>
</AnchorPane>
编辑:换句话说,我想在 FXML 文件中声明我的样式表。这样做似乎适用于除工具提示之外的任何属性重新定义(在本例中为 AnchorPane 背景颜色)。
最佳答案
您尝试为工具提示
设置的CSS属性仅与扩展Region的JavaFX类相关。类(class)。 Tooltip
是 PopupControl
类的子类,因此具有更有限的 CSS 属性库。 Here's a link to a list of available CSS properties for Tooltip
。该站点是您了解 JavaFX CSS 属性的最佳引用。
关于css - JavaFX 工具提示定制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17314450/