我想用java代碼(不在樣式表文件中)創建樣式類 並將其添加到javafx節點。如何在javafx中動態創建和添加樣式類
2
A
回答
1
不知道這是你在找什麼...
Button node = new Button();
node.getStyleClass().add("my-new-style-class");
.my-new-style-class {
-fx-padding: 5;
}
+0
不,我想在代碼中定義樣式類,而不是css文件。 – user2858883
0
的想法是創建一個臨時文件stlyesheet,裏面寫入新的樣式類,樣式表添加到列表並添加新的樣式類。
這裏是一個工作示例:
Button button = new Button("My Text");
button.setOnAction(e -> {
try {
// Create a new tempfile that will be removed as the application exits
File tempStyleClass = File.createTempFile("AppXY_TempStyleClass", ".css");
tempStyleClass.deleteOnExit();
// Write the stlye-class inside
try (PrintWriter printWriter = new PrintWriter(tempStyleClass)) {
printWriter.println(".temp-style { -fx-text-fill: red; }");
}
// Add the style-sheet and the style-class to the node
button.getStylesheets().add(tempStyleClass.toURI().toString());
button.getStyleClass().add("temp-style");
} catch (IOException e1) {
e1.printStackTrace();
}
});
相關問題
- 1. 如何在.net中動態添加CSS樣式/類到HtmlTextWriterTag.Td?
- 2. 如何在selenium webdriver中添加動態創建的HTML類名
- 3. JavaFX CSS動態樣式
- 4. 如何在樣式類中添加src?
- 5. 創建div和添加樣式
- 6. 如何將JQuery移動樣式添加到動態創建的表格行
- 7. 動態創建對象並將其添加到列表中JavaFX
- 8. 如何添加類動態創建的行中的jqGrid
- 9. 無法添加樣式動態創建的按鈕正確
- 10. 在JavaFX中動態添加複選框
- 11. 如何在iframe中動態創建元素的樣式?
- 12. 如何在Angular 2中動態添加樣式表?
- 13. 如何在jQuery中動態添加類
- 14. 如何添加樣式以動態添加表格單元格?
- 15. JavaFX動態添加按鈕
- 16. JavaFX - 如何在Controller類中添加樣式表,但不擴展Application?
- 17. 如何動態創建類
- 18. 如何動態創建類
- 19. 如何將類添加到動態創建的元素?
- 20. 在python中動態創建類和__repr__
- 21. 如何添加彈出窗口/模式,動態創建的表
- 22. 如何使用FXML在JavaFX中動態創建選項卡?
- 23. 在Ruby中動態創建類並添加方法
- 24. 如何在動態創建的元素中添加Javascript事件?
- 25. 如何動態創建數組 - 在循環中添加值
- 26. 如何在javascript中爲動態創建的html添加值
- 27. 如何在動態創建的div中添加圖像?
- 28. 在php中動態創建動態類
- 29. 如何動態添加本地變量到動態創建的Python類方法
- 30. 如何將動態添加事件添加到動態創建的按鈕
爲了記錄:我瞭解的setStyle方法,但在這種情況下,我無法使用它。 – user2858883
爲什麼你不能使用它? – MeGoodGuy
看看這個:https://stackoverflow.com/questions/16236641/dynamically-add-css-stylesheets-in-javafx – MeGoodGuy