是否可以在Color
中使用JLabel
十六进制,例如#02f7fc
?
我想用A-F颜色。使用label.setForeground(Color.(BLUE/RED/BLACK/…);
非常无聊。
答案 0 :(得分:2)
使用@ approach引用的assylias,以下方法会将javafx.scene.paint.Color
转换为java.awt.Color
。
private static Color awtColor(javafx.scene.paint.Color fxColor) {
return new Color(
(float) fxColor.getRed(),
(float) fxColor.getGreen(),
(float) fxColor.getBlue(),
(float) fxColor.getOpacity());
}
使用合适的import
语句,您可以利用JavaFX Color
API。此示例使用Color.web()
创建"使用HTML或CSS属性字符串指定的RGB颜色。"
import static javafx.scene.paint.Color.web;
…
label.setForeground(awtColor(web("0xF0F8FF"))); // ALICEBLUE
label.setForegroundn(awtColor(web("AliceBlue"))); // #F0F8FF
答案 1 :(得分:2)
正如@Andrew所说,你可以使用properties of the list item:
AddressString
答案 2 :(得分:2)
以下内容应允许您使用十六进制设置颜色并使用解码方法。
label.setForeground(Color.decode("#FFFF00"));
答案 3 :(得分:1)
如果你想把它用作背景,那么你可以这样做:
label.setBackground(Color.decode("#02f7fc"))