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++;
            }
相关推荐
游戏开发爱好者82 小时前
日常开发与测试的 App 测试方法、查看设备状态、实时日志、应用数据
android·ios·小程序·https·uni-app·iphone·webview
王码码20353 小时前
Flutter for OpenHarmony 实战之基础组件:第三十一篇 Chip 系列组件 — 灵活的标签化交互
android·flutter·交互·harmonyos
黑码哥3 小时前
ViewHolder设计模式深度剖析:iOS开发者掌握Android列表性能优化的实战指南
android·ios·性能优化·跨平台开发·viewholder
亓才孓3 小时前
[JDBC]元数据
android
独行soc3 小时前
2026年渗透测试面试题总结-17(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
金融RPA机器人丨实在智能3 小时前
Android Studio开发App项目进入AI深水区:实在智能Agent引领无代码交互革命
android·人工智能·ai·android studio
科技块儿3 小时前
利用IP查询在智慧城市交通信号系统中的应用探索
android·tcp/ip·智慧城市
独行soc4 小时前
2026年渗透测试面试题总结-18(题目+回答)
android·网络·安全·web安全·渗透测试·安全狮
王码码20354 小时前
Flutter for OpenHarmony 实战之基础组件:第二十七篇 BottomSheet — 动态底部弹窗与底部栏菜单
android·flutter·harmonyos
2501_915106324 小时前
app 上架过程,安装包准备、证书与描述文件管理、安装测试、上传
android·ios·小程序·https·uni-app·iphone·webview