- java.lang.Object
-
- java.awt.Taskbar
-
public class Taskbar extends Object
Taskbar类允许Java应用程序与系统任务区(任务栏,Dock等)进行交互。根据当前的平台有各种各样的交互,例如显示某些任务的进度,将用户指定的菜单附加到应用程序图标上下文菜单等。
- Implementation Note:
-
Linux支持目前仅限于Unity。
但是要使这些功能在Unity上运行,该应用程序应该从具有指定的
java.desktop.appName系统属性的.desktop文件运行。该属性设置为此.desktop文件名:Exec=java -Djava.desktop.appName=MyApp.desktop -jar /path/to/myapp.jar请参阅https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles - 从以下版本开始:
- 9
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 static classTaskbar.Feature提供功能列表static classTaskbar.State可用窗口进度的种类状态。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 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)
-
-