我需要爲JavaFX中的組添加背景顏色。我試圖用CSS添加它,但由於某種原因,它不起作用。 CSS適用於所有其他佈局管理者,但不適用於Group。我該怎麼辦?如何將背景顏色添加到JavaFX中的組佈局?
回答
解決方案
替換您的Group
使用與Pane
事情會表現類似,除非你將獲得使用CSS做的東西一樣風格的窗格的背景的能力。
背景
如果你想風格的CSS父節點,使用的東西從Region派生:
地區是所有基於節點的JavaFX UI控件的基類,和所有佈局容器。它是一個可調整大小的Parent節點,可以從CSS進行樣式化。它可以有多個背景和邊框。它旨在支持與JavaFX相關的儘可能多的背景和邊框CSS3規範。
組A被設計成是一個非常輕量的父,這將產生最小處理和存儲開銷,因此它supports only very minimal CSS properties(並且不支持CSS背景)。另一方面,它提供了廣泛的CSS樣式功能。
A Pane是一個具體的Region子類,其行爲最像一個組(例如,它不會執行隱式佈局,而是手動佈局窗格中的節點)。
替代的解決方案
此替代的解決方案允許將「背景」節點添加到組中。它在代碼中工作,而不是CSS。
添加到組中的項目由繪畫算法分層,從後到前。因此,添加一個彩色矩形作爲組中的第一項,矩形將有效地形成組的背景。
其實,我在javaFx中說一切皆有可能,因爲它們夠酷。
所以假設你Group
是組和你想改變Background
ColorInput ci = new ColorInput(group.getLayoutX(),
group.getLayoutY(),
group.getLayoutBounds().getWidth(),
group.getLayoutBounds().getHeight(),
Color.WHITE);
group.setEffect(ci);
kabooommm !!!!我有一個白色的背景!
Color.RED); //i change the last part to red
group.setEffect(ci);
kaboomm! kabooom!我有紅色背景
fyi:這會導致你一些關係問題。
希望它有幫助
這個'背景'似乎勾畫了組中的所有其他對象... – Sman789
- 1. 將顏色背景和邊框半徑添加到佈局
- 2. 散景佈局的背景顏色
- 3. 如何用背景圖像爲背景顏色重新添加背景顏色?
- 4. 如何將顏色疊加層添加到背景圖像?
- 5. 兩種顏色的Android佈局背景
- 6. 將背景圖像和背景顏色對添加到元素
- 7. JavaFX舞臺背景顏色?
- 8. 如何添加背景顏色到新添加的行angularjs
- 9. 背景顏色不添加
- 10. 如何爲BarButton添加背景顏色
- 11. Android背景顏色XML佈局
- 12. Android佈局背景顏色變化
- 13. SAPUI5佈局,背景顏色和圖像
- 14. 如何將背景顏色添加到Android SwitchPreference?
- 15. 如何將紋理類型外觀添加到背景顏色
- 16. 如何將背景顏色添加到HTML選項?
- 17. 添加PNG和顏色到背景
- 18. 如何更改android中的所有佈局背景顏色
- 19. 將背景顏色添加到Extjs中的標籤中
- 20. 如何爲javafx中的所有窗格添加相同的背景顏色?
- 21. 如何在javafx中將背景顏色更改爲imageView
- 22. 將背景顏色添加到KML文件中的多邊形
- 23. 如何在xml佈局中設置背景顏色?
- 24. 將顏色添加到顏色數組
- 25. 組背景顏色
- 26. JavaFX:在TextFlow中設置背景顏色
- 27. 在網頁中添加背景顏色
- 28. 使用jQuery將背景顏色添加到輸入文本中
- 29. 將行添加到表中並更改其背景顏色
- 30. 如何更改佈局的背景顏色並永久保留該顏色
+1爲背景! – ItachiUchiha
之前我曾考慮過您的備用解決方案,但我認爲使用Pane可以更輕鬆地處理組件。非常感謝! – NovoBook