2017-10-28 105 views
-1

我爲此搜索了一下,但找不到任何東西。我知道我可以設計按鈕文字,背景顏色等,但我想改變文字本身。JavaFX通過CSS設置按鈕文本

這是我試過(當然實際最終的結果是比較複雜的,但是這都行):

Button#playButton { 
    -fx-background-color: #ddd; 
    -fx-text: "Play"; 
} 

背景色被正確應用,但文字不會改變。

編輯:要走的路似乎是一個自定義屬性,如果有人擁有該領域內的知識,我會愛一個簡明的解釋和執行,這可能會救我的試驗和錯誤小時,我發現了幾個來源!

+0

不可能的,看到的是https:/ /docs.oracle.com/javase/8/javafx/api/javafx/scene/doc-files/cssref.html#button – fabian

+0

也許某種方式可以通過圖標替換代碼中的文本集?那就夠了,雖然我看不到太多希望:c – Xerus

+0

爲什麼你要在CSS中設置文本?這不是他按鈕「風格」的一部分。 –

回答

0

不,你不能使用css設置你的按鈕的文本。但是,嘿!另一方面,你仍然可以使用css在你的按鈕中顯示一個圖標!

你只需要添加到您的CSS:

-fx-graphic : url("relative path to your icon"); 

如果在按鈕重複你的圖標,然後將其添加爲好:

-fx-background-repeat : no-repeat; 
+0

設置圖標很簡單,但如果圖標應替換文本會怎麼樣?在我看來,這是可能的一個自定義的屬性...我必須做更多的研究 – Xerus

+0

你能解釋我更進一步嗎?你是否有一個默認文本,然後在某個事件(比如MouseClicked事件)中,你需要用一個圖標替換文本? –

+0

如果是這種情況,那麼也可以使用CSS來實現:Button#playButton:pressed {-fx-graphic:url(); } ...並刪除和現有的文本,只需使用按鈕,btnName.setText(「」);在一個行動事件,它將與CSS一起工作,並會做你的工作^^ –