1
我在javaFX中的拾色器返回類似0x000000ff
。如何將其轉換爲網頁顏色,無論是rgb或十六進制?如何將顏色選擇器值轉換爲Web或rgb或任何Color類兼容類型?
我在javaFX中的拾色器返回類似0x000000ff
。如何將其轉換爲網頁顏色,無論是rgb或十六進制?如何將顏色選擇器值轉換爲Web或rgb或任何Color類兼容類型?
這個問題的答案爲RGB值是正確的的Javadoc ColorPicker:
final ColorPicker colorPicker = new ColorPicker();
colorPicker.setOnAction(new EventHandler() {
public void handle(Event t) {
Color c = colorPicker.getValue();
System.out.println("New Color's RGB = "+c.getRed()+" "+c.getGreen()+" "+c.getBlue());
}
});
或者你可以得到的顏色爲十六進制字符串使用上面的示例:
String hexString = c.toString();
肯定。我已經注意到了。但是方法「get」在轉換爲int之後只返回大多數爲1和0的無rgb值。 和ofc。 toString返回十六進制,但它不是一個十六進制顏色值,可以用於CSS前例,所以這就是爲什麼我很困惑。 –
閱讀[文檔](http://docs.oracle.com/javase/8/javafx/api/javafx/scene/paint/Color.html#getRed--)。 'getRed()','getGreen()'和'getBlue()'方法返回範圍爲0.0-1.0的'double'。所以如果你投到'int',當然你可以得到'0'或'1'。如果你想在0-255範圍內使用'int',請執行'(int)(c.getRed()* 255)'。 –
好吧!確實如此!謝謝 –