dev.to | 📄 原文链接 | 2026-11-06 收录

原生菜单、文件对话框与 3D 模型:Codename One 补齐桌面体验

来源:dev.to — 2026-11-04

📋 概述

桌面应用在头十秒就被评判:菜单栏不对、Cmd+Q 没反应、保存对话框像上个年代的产物,用户未必说得出哪里别扭,但就是会注意到。作者上周用 Java 重写了一个文字处理器,要做到能和原生应用并肩,于是把这批能力并进了 Codename One,而且对手机端已有的代码同样可用。新的 showOpenDialog 与 showSaveDialog 支持多选、类型过滤、推荐文件名、对话框内的自定义选项(比如「移除位置数据」复选框)和浏览过程中的预览,每个平台调用各自的原生控件——macOS 的 NSOpenPanel 与 NSSavePanel、Windows 的 IFileOpenDialog、Linux 的 GtkFileChooser、Android 与 iOS 的系统文档选择器、浏览器自带的选择器与下载——平台没有的额外项自动忽略,所以同一份请求全平台通用。菜单方面,Command 只要声明自己该放在哪个路径,就会出现在 macOS、Windows、Linux 和浏览器构建的原生菜单栏里,路径自动形成子菜单。

🔑 核心要点

💡 金句

“A desktop app gets judged in the first ten seconds. If the menu bar is wrong, Cmd+Q does nothing or the Save dialog looks like it came from a different decade, people notice, even if they can't say what bothers them.”
译:桌面应用在头十秒就被评判。如果菜单栏不对、Cmd+Q 没反应、保存对话框像是上个年代的产物,用户会注意到,即使他们说不清哪里别扭。
← 返回 dev.to 首页