托盘
类
托盘图标
托盘图标类及其相关方法。该类型构造函数是私有的,相反,您应该使用静态方法 TrayIcon.new
。
警告
与Rust不同,javascript没有在对象被垃圾回收时运行清理代码的方法,但是当塔里应用存在时,这个托盘图标将被清理。但是,如果您想提前清理此对象,则需要调用 TrayIcon.close
。
示例
import { TrayIcon } from '@tauri-apps/api/tray';const tray = await TrayIcon.new({ tooltip: 'awesome tray tooltip' });tray.set_tooltip('new tooltip');
扩展
属性
属性 | 修饰符 | 类型 | 描述 | 定义在 |
---|---|---|---|---|
<锚点 id="id" name="id"ANCHOR> id | 公共的 | 字符串 | 与该托盘图标相关的ID。 | 来源:<a href="https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L160">https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L160</a> |
访问器
rid
获取签名
get rid(): number
返回
数字
继承自
来源:<a href="https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/core.ts#L297">https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/core.ts#L297</a>
方法
关闭
close(): Promise<void>
销毁并从内存中清理此资源。《您不应再调用此对象上的任何方法,并且应丢弃对其的任何引用。
返回
继承自
来源:<a href="https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/core.ts#L309">https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/core.ts#L309</a>
设置图标
setIcon(icon): Promise<void>
设置新的托盘图标。如果提供null
,将删除图标。
注意,您可能需要`image-ico`或`image-png`Cargo功能才能使用此API。要启用它,更改您的Cargo.toml文件
[dependencies]tauri = { version = "...", features = ["...", "image-png"] }
参数
参数 | 类型 |
---|---|
图标 | | null | string | number [] | | | |
返回
来源:<a href="https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L224">https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L224</a>
将图标设置为模板
setIconAsTemplate(asTemplate): Promise<void>
将当前图标设置为模板。**仅限macOS使用**
参数
参数 | 类型 |
---|---|
asTemplate | 布尔类型 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L292
设置菜单
setMenu(menu): Promise<void>
设置新的托盘菜单。
平台特定
- Linux:一旦设置了菜单,就无法再删除,因此
null
不起作用
参数
参数 | 类型 |
---|---|
菜单 | null | 子菜单 | 菜单 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L241
左键点击时设置菜单
setMenuOnLeftClick(onLeft): Promise<void>
禁用或启用在左键点击时显示托盘菜单。
平台特定
- Linux:不支持。
参数
参数 | 类型 |
---|---|
onLeft | 布尔类型 |
返回
已弃用
请使用TrayIcon.setShowMenuOnLeftClick
代替。
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L308
左键点击时显示菜单
setShowMenuOnLeftClick(onLeft): Promise<void>
禁用或启用在左键点击时显示托盘菜单。
平台特定
- Linux:不支持。
参数
参数 | 类型 |
---|---|
onLeft | 布尔类型 |
返回
自
2.2.0
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L324
设置临时目录路径
setTempDirPath(path): Promise<void>
仅限Linux,设置托盘图标临时目录路径。
在Linux上,我们需要将图标写入磁盘,通常它是$XDG_RUNTIME_DIR/tray-icon
或$TEMP/tray-icon
。
参数
参数 | 类型 |
---|---|
路径 | null | 字符串 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L287
设置标题
setTitle(title): Promise<void>
为这个托盘图标设置工具提示。
平台特定
- Linux: 除非同时有图标,否则标题不会显示。标题对数值和其他经常更新的信息很有用。通常,除非用户请求,否则不显示,因为它可能会占用用户面板上大量空间。这可能在所有可视化中都不会显示。
- Windows: 不支持
参数
参数 | 类型 |
---|---|
title | null | 字符串 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L272
设置工具提示
setTooltip(tooltip): Promise<void>
为这个托盘图标设置工具提示。
平台特定
- Linux: 不支持
参数
参数 | 类型 |
---|---|
tooltip | null | 字符串 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L256
设置可见性
setVisible(visible): Promise<void>
显示或隐藏此托盘图标。
参数
参数 | 类型 |
---|---|
visible | 布尔类型 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L277
通过ID获取
static getById(id): Promise<null | TrayIcon>
使用提供的ID获取托盘图标。
参数
参数 | 类型 |
---|---|
id | 字符串 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L168
新实例化
static new(options?): Promise<TrayIcon>
创建一个新的TrayIcon
。
平台特定
- Linux: 有时除非设置了菜单,否则图标可能看不到。即使设置了空的
Menu
也足够。
参数
参数 | 类型 |
---|---|
options ? | 托盘图标选项 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L192
通过ID移除
static removeById(id): Promise<void>
使用提供的ID从tauri的内部状态中删除托盘图标。
注意,这可能会导致托盘图标消失,如果它没有被其他地方克隆或由JS引用。
参数
参数 | 类型 |
---|---|
id | 字符串 |
返回
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L180
接口
托盘图标选项
TrayIcon
创建选项
属性
属性 | 类型 | 描述 | 定义在 |
---|---|---|---|
action? | (event : TrayIconEvent ) => void | 托盘图标上事件的处理程序。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L137 |
icon? | | string | number [] | ArrayBuffer | Uint8Array <ArrayBufferLike > | Image | 托盘图标,可以是图标字节或图标文件的路径。注意,您可能需要使用 image-ico 或 image-png Cargo 功能才能使用此 API。要启用它,修改您的 Cargo.toml 文件: [dependencies] tauri = { version = "...", features = ["...", "image-png"] } | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L89 |
iconAsTemplate? | 布尔类型 | 将图标用作 模板。仅限 macOS。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L115 |
id? | 字符串 | 托盘图标 ID。如果为 undefined,则将分配一个随机 ID | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L76 |
menu? | Submenu | Menu | 托盘图标菜单 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L78 |
menuOnLeftClick? | 布尔类型 | 是否在左键点击时显示托盘菜单,默认为 true 。#### 平台特定:- Linux: 不支持。已被弃用,请使用 TrayIconOptions.showMenuOnLeftClick 代替。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L125 |
showMenuOnLeftClick? | 布尔类型 | 是否在左键点击时显示托盘菜单,默认为 true 。#### 平台特定:- Linux: 不支持。自 2.2.0 版本起。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L135 |
tempDirPath? | 字符串 | 托盘图标临时文件夹路径。仅限 Linux。在 Linux 上,我们需要将图标写入磁盘,通常它将是 $XDG_RUNTIME_DIR/tray-icon 或 $TEMP/tray-icon 。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L111 |
title? | 字符串 | 托盘标题#### 平台特定 - Linux: 只有在存在图标时才会显示标题。标题对于数字和其他频繁更新的信息很有用。一般来说,只有当用户请求显示时才应显示它,因为它可能会占用用户面板上的大量空间。这可能在所有视觉表示中都不会显示。- Windows: 不支持。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L104 |
tooltip? | 字符串 | 托盘图标工具提示 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L91 |
类型别名
鼠标按钮
type MouseButton: "Left" | "Right" | "Middle";
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L11
鼠标按钮状态
type MouseButtonState: "Up" | "Down";
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L10
托盘图标点击事件
type TrayIconClickEvent: object;
类型声明
名称 | 类型 | 描述 | 定义在 |
---|---|---|---|
按钮 | 鼠标按钮 | 触发此事件的鼠标按钮。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L35 |
buttonState | 鼠标按钮状态 | 触发此事件时鼠标按钮的状态。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L37 |
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L33
托盘图标事件
type TrayIconEvent: | TrayIconEventBase<"Click"> & TrayIconClickEvent | TrayIconEventBase<"DoubleClick"> & Omit<TrayIconClickEvent, "buttonState"> | TrayIconEventBase<"Enter"> | TrayIconEventBase<"Move">| TrayIconEventBase<"Leave">;
描述托盘图标事件。
平台特定
- Linux:不支持。即使显示图标,此事件也不会被触发,图标在右键点击时仍将显示上下文菜单。
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L48
TrayIconEventBase<类型参数>
type TrayIconEventBase<T>: object;
类型参数
类型参数 |
---|
T extends TrayIconEventType |
类型声明
名称 | 类型 | 描述 | 定义在 |
---|---|---|---|
id | 字符串 | 触发此事件的托盘图标的ID。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L23 |
position | PhysicalPosition | 触发此事件的点击的物理位置。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L25 |
rect | object | 托盘图标的定位和大小。 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L27 |
rect.position | PhysicalPosition | - | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L28 |
rect.size | PhysicalSize | - | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L29 |
type | T | 托盘图标事件类型 | 来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L21 |
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L19
托盘图标事件类型
type TrayIconEventType: | "Click" | "DoubleClick" | "Enter" | "Move" | "Leave";
来源: https://github.com/tauri-apps/tauri/blob/dev/packages/api/src/tray.ts#L12
© 2025 Tauri 贡献者。CC-BY / MIT