問題描述 - 在我的應用程序中,我需要取回瓦片窗格(或任何其他控件)的顏色,但我沒有找到任何屬性/函數。如何獲取Javafx中的瓦片窗格的背景顏色?
我使用平鋪窗格來顯示顏色色板,並在其單擊事件我想要它的背景顏色。
我想要什麼:我想要得到控制的背景色上的點擊事件
問題描述 - 在我的應用程序中,我需要取回瓦片窗格(或任何其他控件)的顏色,但我沒有找到任何屬性/函數。如何獲取Javafx中的瓦片窗格的背景顏色?
我使用平鋪窗格來顯示顏色色板,並在其單擊事件我想要它的背景顏色。
我想要什麼:我想要得到控制的背景色上的點擊事件
試試這個在ActionEvent
,你可以做到這一點
handle(ActionEvent event){//suppose we are in the handle method
Object o = event.getSource();
if(o instanceof Region){
Background b = ((Region)o).getBackground();
Paint p = b.getFills().get(0).getFill();//paint is actually your color :)
if(p instanceof Color){
((Color)p) //now you have a color :)
希望它可以幫助
謝謝先生,但我解決了它通過創建自定義控制背面顏色物業 –
專業babily最好得到最後一個填充,因爲它是最後一個要呈現的(按照javafx.scene.layout.Background的文檔「每個已定義的BackgroundFill按順序呈現」)。所以它應該是'b.getFills()。get(b.getFills()。size() - 1).getFill()'而不是'b.getFills()。get(0).getFill()' – negste
您應檢查此問題: http://stackoverflow.com/questions/30851893/javafx-how-to-get-background-color-of-tab-button-etc – DVarga