把保存按钮放进系统标题栏:桌面应用的工具栏该怎么做
来源:dev.to — 2026-10-27
📋 概述
文档编辑器最需要的是空间,而把整整一行留给标题、再加一行放保存和搜索,很快就把空间花完了。Codename One 现在允许把组件放进 macOS、Windows、Linux 原生窗口的标题区域:设置 desktop.titleBar=custom,再通过普通工具栏 API 提供标题组件,就能把保存、撤销、文档状态和命令搜索放到用户在看的同一行,正文从下面开始。作者强调不要自己给 macOS 的红绿灯按钮或 Windows 的窗口按钮留固定内边距,框架会为真实的系统控件预留空间,也会考虑窗口 DPI 变化。同一篇还讲到两件不那么显眼的桌面能力:用共享的 Process API 启动外部工具,以及用熟悉的 Java API 读写 ZIP 流,让应用嵌进用户已有的工作流。
🔑 核心要点
- 用 desktop.titleBar=custom 加工具栏 API,把保存和搜索搬进原生标题区域
- 不要手写红绿灯按钮的内边距,框架会为系统控件和 DPI 变化预留空间
- 同一套 Java 或 Kotlin 代码可以同时构建 iOS、Android、桌面和 Web 应用
- 外部工具用共享 Process API 启动,导出则直接流式写 ZIP,不必先落地临时文件
💡 金句
“Don't add fixed padding for macOS traffic lights or Windows caption buttons.”
译:不要自己给 macOS 的红绿灯按钮或 Windows 的窗口按钮加固定内边距。
← 返回 dev.to 首页