我正在使用Eclipse RCP托盘项目,其描述为 in Vogellas tutorials 。
现在的要求不仅要在工具提示中显示应用程序的名称,还要在执行冗长的操作时显示百分比。
我知道trayitem属性是来自ApplicationWorkbenchWindowAdvisor
的私有属性,所以我添加了一个getter和setter方法。
唯一缺少的是可以从我的ProgressMonitorDialog
实例访问trayitem实例。
你能告诉我,你将如何解决这个难题? 感谢
答案 0 :(得分:1)
由于您可以从任何窗口围绕TrayItem
构建SystemTray
:
final Tray tray = window.getShell().getDisplay().getSystemTray();
TrayItem trayItem = new TrayItem(tray, SWT.NONE);
,您是否必须从TrayItem
访问 ApplicationWorkbenchWindowAdvisor
个实例?
您可以将它放在一个更易于访问的类中,甚至可以在需要的地方和时间构建一个。
说到在进行冗长的操作时显示百分比,我只是想提到最新的任务图标improvements in Eclipse3.6M6(不是系统托盘,但他们现在可以提供良好的状态指示器)。有关示例,请参阅Snippet 336。
新的API
TaskItem#setOverlayImage(Image)
允许客户端将图像设置为显示在任务栏中的应用程序按钮之上。
新API
TaskItem#setOverlayText(String)
允许客户端设置要在任务栏中的应用程序按钮顶部显示的短文本。
新的API
TaskItem#setProgress(int)
和TaskItem#setProgressState(int)
允许客户在任务栏的应用程序按钮中显示进度指示。