java.lang.Object
java.awt.Taskbar
Taskbar 类允许 Java 应用程序与系统任务区域(任务栏、Dock 等)进行交互。
根据当前平台,有多种交互方式,例如显示某些任务的进度、将用户指定的菜单附加到应用程序图标上下文菜单等。
- 实现注意事项:
-
Linux 支持目前仅限于 Unity。但是,要使这些功能在 Unity 上运行,应从 .desktop 文件运行应用程序,并将指定的
java.desktop.appName系统属性设置为此 .desktop 文件名:Exec=java -Djava.desktop.appName=MyApp.desktop -jar /path/to/myapp.jar参见 https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles - 自从:
- 9
-
内部类总结
内部类 -
方法总结
修饰符和类型方法描述获取此应用程序图标的图像。getMenu()获取用于将项目添加到系统任务区域中此应用程序图标的 PopupMenu。static Taskbar返回当前任务栏上下文的Taskbar实例。booleanisSupported(Taskbar.Feature feature) 测试当前平台是否支持Feature。static boolean测试当前平台是否支持此类。voidrequestUserAttention(boolean enabled, boolean critical) 请求用户关注此应用程序。void请求用户注意指定的窗口。voidsetIconBadge(String badge) 将系统提供的小徽章附加到此应用程序的图标上。voidsetIconImage(Image image) 请求系统将此应用程序的图标更改为提供的image。void将提供的 PopupMenu 的内容附加到任务区域中的应用程序图标。voidsetProgressValue(int value) 将系统提供的小进度条附加到此应用程序的图标上。voidsetWindowIconBadge(Window w, Image badge) 为指定窗口的任务区域中的此应用程序图标附加一个小徽章。voidsetWindowProgressState(Window w, Taskbar.State state) 设置指定窗口的进度状态。voidsetWindowProgressValue(Window w, int value) 在指定窗口的任务区域中显示确定的进度条。
-
方法详情
-
isSupported
测试当前平台是否支持Feature。- 参数:
feature- 指定的Taskbar.Feature- 返回:
- 如果当前平台支持指定的功能,则为真
-
getTaskbar
返回当前任务栏上下文的Taskbar实例。在某些平台上可能不支持任务栏 API;使用isTaskbarSupported()方法判断是否支持当前任务栏。- 返回:
- 任务栏实例
- 抛出:
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回trueUnsupportedOperationException- 如果当前平台不支持此类- 参见:
-
isTaskbarSupported
public static boolean isTaskbarSupported()测试当前平台是否支持此类。如果支持,请使用getTaskbar()检索实例。- 返回:
true当前平台是否支持此类;false否则- 参见:
-
requestUserAttention
public void requestUserAttention(boolean enabled, boolean critical) 请求用户关注此应用程序。根据平台的不同,这可能会通过任务区域中的跳动或闪烁图标进行视觉指示。它可能对已经激活的应用程序没有影响。在某些平台(例如 Mac OS)上,此效果可能会在应用程序激活时消失,并且无法通过将enabled设置为 false 来消除。其他平台可能需要额外调用requestUserAttention(boolean, boolean)以将enabled参数设置为 false 来驳回此请求。- 参数:
enabled- 如果为假则禁用此请求critical- 如果这是一个重要的请求- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.USER_ATTENTION特性
-
requestWindowUserAttention
请求用户注意指定的窗口。如果窗口表示在任务区域中不可显示,则无效。它是否可显示取决于所有窗口类型、平台和实现。- 参数:
w- 窗口- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.USER_ATTENTION_WINDOW特性
-
setMenu
将提供的 PopupMenu 的内容附加到任务区域中的应用程序图标。- 参数:
menu- 附加到此应用程序的 PopupMenu- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.MENU特性
-
getMenu
获取用于将项目添加到系统任务区域中此应用程序图标的 PopupMenu。- 返回:
- 弹出菜单
- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.MENU特性
-
setIconImage
请求系统将此应用程序的图标更改为提供的image。- 参数:
image- 改变- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.ICON_IMAGE特性
-
getIconImage
获取此应用程序图标的图像。- API 注意:
-
返回的图标图像可能不等于
setIconImage(java.awt.Image)设置的图像,但在视觉上应该相似。 - 返回:
- 此应用程序图标的图像
- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.ICON_IMAGE特性
-
setIconBadge
将系统提供的小徽章附加到此应用程序的图标上。通常是一个数字。一些平台不支持字符串值并且只接受整数值。在这种情况下,传递一个表示为字符串的整数作为参数。这可以通过Feature.ICON_BADGE_TEXT和Feature.ICON_BADGE_NUMBER进行测试。传递null作为参数隐藏徽章。- 参数:
badge- 贴在图标上的标签- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.ICON_BADGE_NUMBER或Taskbar.Feature.ICON_BADGE_TEXT功能
-
setWindowIconBadge
为指定窗口的任务区域中的此应用程序图标附加一个小徽章。它可能被系统设置禁用。如果窗口表示在任务区域中不可显示,则无效。它是否可显示取决于所有窗口类型、平台和实现。- 参数:
w- 要更新的窗口badge- 要附加到图标的图像- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.ICON_BADGE_IMAGE_WINDOW特性
-
setProgressValue
public void setProgressValue(int value) 将系统提供的小进度条附加到此应用程序的图标上。- 参数:
value- 从 0 到 100,其他用于禁用进度指示- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.PROGRESS_VALUE特性
-
setWindowProgressValue
在指定窗口的任务区域中显示确定的进度条。如果窗口表示在任务区域中不可显示,则无效。它是否可显示取决于所有窗口类型、平台和实现。
视觉行为取决于平台和Taskbar.State。
此调用取消了窗口的INDETERMINATE状态。
请注意,当多个窗口在任务区域中分组时,行为是特定于平台的。- 参数:
w- 要更新的窗口value- 从 0 到 100,其他切换到Taskbar.State.OFF状态并禁用进度指示- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.PROGRESS_VALUE_WINDOW特性- 参见:
-
setWindowProgressState
设置指定窗口的进度状态。如果窗口表示在任务区域中不可显示,则无效。它是否可显示取决于所有窗口类型、平台和实现。
每个状态都以平台相关的方式显示进度。
请注意,从INDETERMINATE状态切换到任何确定状态可能会重置setWindowProgressValue设置的值- 参数:
w- 窗口state- 改为- 抛出:
SecurityException- 如果存在安全管理器并且它拒绝RuntimePermission("canProcessApplicationEvents")权限。UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.PROGRESS_STATE_WINDOW特性- 参见:
-