2013-12-12 12 views
7

Nel mio JavaFX app, creo un cerchio e poi consentire all'utente di colore in ...JavaFX - Get RGB Valore da colori del nodo Fill

Circle circle = new Circle(); 
circle.setFill(colorPicker.getValue()); 

poi ho bisogno di prendere poi il colore che il cerchio è e ottenere i valori RGB in forma esadecimale (#FFFFFF)

circle.getFill(); //returns a Paint object 

Come faccio ad avere il riempimento in forma esadecimale RGB ??

risposta

11

Prova questo:

Color c = (Color) circle.getFill(); 
String hex = String.format("#%02X%02X%02X", 
      (int)(c.getRed() * 255), 
      (int)(c.getGreen() * 255), 
      (int)(c.getBlue() * 255)); 

Speranza che aiuta.

+0

Ha funzionato! Grazie mille. – sscode

+0

Prego. Lieto aiuto :) – Dale