- java.lang.Object
-
- java.awt.Taskbar
-
public class Taskbar extends Object
Taskbar类允许Java应用程序与系统任务区域(任务栏,Dock等)进行交互。根据当前平台有多种交互,例如显示某些任务的进度,将用户指定的菜单附加到应用程序图标上下文菜单等。
- Implementation Note:
-
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
-
-
嵌套类汇总
嵌套类 变量和类型 类 描述 static classTaskbar.Feature提供的功能列表。static classTaskbar.State各种可用的窗口进度状态。
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 ImagegetIconImage()获取此应用程序图标的图像。PopupMenugetMenu()获取PopupMenu用于将项添加到系统任务区域中此应用程序的图标。static TaskbargetTaskbar()返回当前任务栏上下文的Taskbar实例。booleanisSupported(Taskbar.Feature feature)测试当前平台是否支持Feature。static booleanisTaskbarSupported()测试当前平台是否支持此类。voidrequestUserAttention(boolean enabled, boolean critical)请求用户注意此应用程序。voidrequestWindowUserAttention(Window w)请求用户注意指定的窗口。voidsetIconBadge(String badge)为此应用程序的图标添加一个小型系统提供的徽章。voidsetIconImage(Image image)将此应用程序的图标更改为提供的图像。voidsetMenu(PopupMenu menu)将提供的PopupMenu的内容附加到任务区域中的应用程序图标。voidsetProgressValue(int value)在此应用程序的图标上添加一个小型系统提供的进度条。voidsetWindowIconBadge(Window w, Image badge)在指定窗口的任务区域中为此应用程序的图标添加小徽章。voidsetWindowProgressState(Window w, Taskbar.State state)设置指定窗口的进度状态。voidsetWindowProgressValue(Window w, int value)在指定窗口的任务区域中显示确定的进度条。
-
-
-
方法详细信息
-
isSupported
public boolean isSupported(Taskbar.Feature feature)
测试当前平台是否支持Feature。- 参数
-
feature- 指定的Taskbar.Feature - 结果
- 如果当前平台支持指定的功能,则为true
-
getTaskbar
public static Taskbar getTaskbar()
- 结果
- 任务栏实例
- 异常
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true -
UnsupportedOperationException- 如果当前平台不支持此类 - 另请参见:
-
isTaskbarSupported(),GraphicsEnvironment.isHeadless()
-
isTaskbarSupported
public static boolean isTaskbarSupported()
测试当前平台是否支持此类。 如果支持,请使用getTaskbar()检索实例。- 结果
-
true如果当前平台支持此类; 否则为false - 另请参见:
-
getTaskbar()
-
requestUserAttention
public void requestUserAttention(boolean enabled, boolean critical)请求用户注意此应用程序。 根据平台的不同,可以通过任务区域中的弹跳或闪烁图标直观地指示。 它可能对已经激活的应用程序没有影响。 在某些平台(例如Mac OS)上,此效果可能会在应用程序激活时消失,并且无法通过将enabled设置为false来解除。 其他平台可能需要额外调用requestUserAttention(boolean, boolean)以将enabled参数设置为false来解除此请求。- 参数
-
enabled- 如果为false,则禁用此请求 -
critical- 如果这是一个重要的请求 - 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.USER_ATTENTION功能
-
requestWindowUserAttention
public void requestWindowUserAttention(Window w)
请求用户注意指定的窗口。 如果窗口表示在任务区域中不可显示,则无效。 它是否可显示取决于所有窗口类型,平台和实现。- 参数
-
w- 窗口 - 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.USER_ATTENTION_WINDOW功能
-
setMenu
public void setMenu(PopupMenu menu)
将提供的PopupMenu的内容附加到任务区域中的应用程序图标。- 参数
-
menu- 要附加到此应用程序的PopupMenu - 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.MENU功能
-
getMenu
public PopupMenu getMenu()
获取PopupMenu用于将项添加到系统任务区域中此应用程序的图标。- 结果
- PopupMenu
- 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.MENU功能
-
setIconImage
public void setIconImage(Image image)
将此应用程序的图标更改为提供的图像。- 参数
-
image- 改变 - 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.ICON_IMAGE功能
-
getIconImage
public Image getIconImage()
获取此应用程序图标的图像。- 结果
- 此应用程序图标的图像
- 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.ICON_IMAGE功能
-
setIconBadge
public void setIconBadge(String badge)
为此应用程序的图标添加一个小型系统提供的徽章。 通常是一个数字。 某些平台不支持字符串值,只接受整数值。 在这种情况下,将表示为字符串的整数作为参数传递。 这可以通过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
public void setWindowIconBadge(Window w, Image badge)
在指定窗口的任务区域中为此应用程序的图标添加小徽章。 它可能被系统设置禁用。 如果窗口表示在任务区域中不可显示,则无效。 它是否可显示取决于所有窗口类型,平台和实现。- 参数
-
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
public void setWindowProgressValue(Window w, int value)
在指定窗口的任务区域中显示确定的进度条。 如果窗口表示在任务区域中不可显示,则无效。 它是否可显示取决于所有窗口类型,平台和实现。
视觉行为是平台和Taskbar.State依赖。
此调用取消窗口的INDETERMINATE状态。
请注意,当多个窗口在任务区域中分组时,行为是特定于平台的。- 参数
-
w- 要更新的窗口 -
value- 从0到100,其他切换到Taskbar.State.OFF状态并禁用进度指示 - 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.PROGRESS_VALUE_WINDOW功能 - 另请参见:
-
setWindowProgressState(java.awt.Window, State)
-
setWindowProgressState
public void setWindowProgressState(Window w, Taskbar.State state)
设置指定窗口的进度状态。 如果窗口表示在任务区域中不可显示,则无效。 它是否可显示取决于所有窗口类型,平台和实现。
每个州都以平台相关的方式显示进度。
注意比从INDETERMINATE状态切换到任何确定状态可能重置值由setWindowProgressValue设置- 参数
-
w- 窗口 -
state- 改为 - 异常
-
SecurityException- 如果存在安全管理器且它拒绝RuntimePermission("canProcessApplicationEvents")权限。 -
UnsupportedOperationException- 如果当前平台不支持Taskbar.Feature.PROGRESS_STATE_WINDOW功能 - 另请参见:
-
Taskbar.State.OFF,Taskbar.State.NORMAL,Taskbar.State.PAUSED,Taskbar.State.ERROR,Taskbar.State.INDETERMINATE,setWindowProgressValue(java.awt.Window, int)
-
-