SuperAPI AI 工具集

customizing-tauri-windows

编程与开发

查看项目

更新于 10-15 20:06

技能介绍

用途:指导在 Tauri v2 中定制应用窗口外观与交互,包括自定义标题栏、透明窗口、窗口装饰、拖拽区域和窗口菜单。

主要能力:窗口配置可通过 tauri.conf.json 静态设置(如 title、width、height、decorations、transparent、alwaysOnTop、center),也可在运行时通过 JavaScript Window API 或 Rust Window 结构体修改。自定义标题栏流程为:关闭 decorations、在 src-tauri/capabilities/default.json 配置 core:window:default、core:window:allow-start-dragging、allow-close、allow-minimize、allow-toggle-maximize 权限,编写 HTML/CSS 标题栏结构,再用 @tauri-apps/api/window 的 getCurrentWindow() 绑定最小化、最大化、关闭操作。data-tauri-drag-region 仅作用于自身元素、不影响子元素,可保留按钮交互;也可手动监听 mousedown 实现拖拽与双击最大化。macOS 透明标题栏需在 Cargo.toml 添加 cocoa 依赖,并在 Rust 中使用 TitleBarStyle::Transparent 与 NSColor 设置背景色。窗口菜单支持 Text、Check、Separator、Icon(Tauri 2.8.0+)类型,可用 JavaScript 的 Menu、MenuItem、Submenu、PredefinedMenuItem、CheckMenuItem 或 Rust 的 MenuBuilder、SubmenuBuilder 创建,并支持菜单事件处理与动态更新。快捷键使用 CmdOrCtrl+S 等 accelerator 字符串。

限制:macOS 上自定义标题栏会失去窗口吸附等原生特性,透明标题栏可保留;macOS 菜单项必须归入子菜单,顶层项会被忽略。资料未提供收费、价格与平台支持范围等信息。