我有一个标签。尝试在我的CSS中为这个标签设置径向渐变。 我怎么能这样做? 如果我设置-fx-background-color:径向渐变(中心50%50%,半径50%,rgb(104,163,193)0%,rgb(23,56,99)100%); - 我收到错误"参数不匹配" 谢谢你的帮助!
答案 0 :(得分:5)
设置形状的渐变
这是我从很久以前写过的小clock widget中提取的一个例子:
-fx-fill: radial-gradient(radius 180%, burlywood, derive(burlywood, -30%), derive(burlywood, 30%));
渐变显示为时钟中心正下方的圆形阴影。
设置标签的渐变
当您使用标签时,用于对标签文本进行着色的相应css属性对于前景文本为-fx-text-fill
,对于文本背景为-fx-background-color
。
以下是将-fx-text-fill
和-fx-background-color
样式应用于标签的示例。用于背景的径向渐变是用于钟面的径向渐变。
Label label = new Label("xyzzy");
label.setStyle("-fx-background-color: radial-gradient(radius 180%, burlywood, derive(burlywood, -30%), derive(burlywood, 30%)); -fx-text-fill: white;");
用于渐变的实际参数取决于您的应用
当然,径向渐变的配置会根据您想要绘制的渐变而变化。通过css指定径向渐变的表达式构造语法的文档包含在JavaFX 8 CSS reference guide中。