javafx HTMLEditor自定义字体

javafx HTMLEditor原有的字体选择有很多,选择的时候很难定位为常用的,所以需要自定义HTMLEditor的字体选择。

可以使用lookupAll查找到字体选择的ComboBox

java 复制代码
            int i = 0;
            limitedFonts = FXCollections.observableArrayList("SimSun", "SimHei");
            //.font-menu-button是字体选择ComboBox的样式,前面需要加上 .
            Set<Node> menuButton1 = customcontent.lookupAll(".font-menu-button");
            for (Node candidate : menuButton1) {
                if (candidate instanceof ComboBox && i == 1) {
                    ComboBox menuButton = (ComboBox) candidate;                  
                    List<String> removalList = FXCollections.observableArrayList();
                    //menuButton.getItems()这个需要HTMLEditor初始化完成,否则会返回空集合或size=0
                    final List<String> fontSelections = menuButton.getItems();
                    for (String item : fontSelections) {
                        if (!limitedFonts.contains(item)) {
                            removalList.add(item);
                        }
                    }
                    fontSelections.removeAll(removalList);                  
                }
                i++;
            }
相关推荐
Kapaseker19 分钟前
Kotlin Toolchain 0.11 发布:主要是把 Amper 干没了
android·kotlin
三少爷的鞋1 小时前
Android 现代架构不需要事件总线进阶篇
android
杉氧16 小时前
深入理解 Compose 重组机制:快照系统如何驱动 UI 精准刷新?
android·架构·android jetpack
召钱熏16 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端
杉氧17 小时前
深度解析:Jetpack Compose 核心架构与底层原理 —— 十年安卓老兵的“破茧重生”
android·架构·android jetpack
通玄17 小时前
Jetpack Compose 入门系列(七):ViewModel 与界面状态管理
android
落魄Android在线炒饭17 小时前
Android Framework 开发技巧:android.jar 生成与系统快速编译验证
android
如此风景18 小时前
Kotlin Flow操作符学习
android·kotlin
plainGeekDev19 小时前
GreenDAO → Room
android·java·kotlin
weiggle19 小时前
第八篇:ViewModel + Compose——生产级状态管理实践
android