2015-11-03 27 views
1

首先,是否可以修改ChoiceBox複選標記形狀?使用CSS類完全改變CheckBox標記很容易(.check-box:selected .mark)。然而,我在ChoiceBox的ContextMenu商標上發現的所有內容是,您可以使用.context-menu CSS類中的-fx-mark-color修改其顏色。我嘗試了幾個類名來改變形狀爲一個自定義的SVG無濟於事。如何修改JavaFX中的ChoiceBox複選標記?

.context-menu .menu-item:selected .mark { 
    -fx-shape: "M1,1 h4 v4 h-4 v-4 Z"; 
} 

在下面的圖片我已經完全reskinned我的JavaFX應用程序,以匹配Mac的原生可可GUI,但菜單選中標記,似乎是不可能解決的唯一瑕疵。

enter image description here

+0

'-fx-shape'是一個SVG字符串,你嘗試提供一個不同的SVG字符串嗎? – jewelsea

+0

@jewelsea是的。我在我的文章中包含了這一嘗試。它不起作用;我也知道這是一個有效的SVG形狀,因爲我在'.arrow-button'上試了它,這是可以改變的。 –

+0

編輯您的問題以包含您使用的實際SVG字符串,而不是像''這樣的不可用值。 – jewelsea

回答

2

搜索modena.css樣式表-fx-shape。對於Java 8,你會發現:

.check-menu-item:checked > .left-container > .check 

這是裏面的菜單項打勾標記(它也涵蓋了所選項目的檢查在ChoiceBox)的CSS選擇器。在自定義CSS樣式表中定義相同的CSS選擇路徑。在該選擇器中,放置一個-fx-shape規則,該規則爲您希望用於檢查的形狀定義自定義svg路徑。