代码之家  ›  专栏  ›  技术社区  ›  Raven

从ProgressMonitor对话框更改TrayIcon工具提示

  •  2
  • Raven  · 技术社区  · 14 年前

    我使用的是EclipseRCP trayitem,它被描述为 in Vogellas tutorials .

    现在的要求不仅是在工具提示中显示应用程序的名称,而且还要在执行长时间操作时显示百分比。

    我知道trayitem属性是来自 ApplicationWorkbenchWindowAdvisor ,所以我添加了一个getter和setter方法。

    唯一缺少的是从我的 ProgressMonitorDialog 实例。

    你能告诉我,你将如何解决这个难题吗?
    谢谢

    1 回复  |  直到 14 年前
        1
  •  1
  •   VonC    14 年前

    因为你可以建立一个 TrayItem 周围 SystemTray 从任何窗口:

    final Tray tray = window.getShell().getDisplay().getSystemTray();
    TrayItem trayItem = new TrayItem(tray, SWT.NONE);
    

    ,你必须进入吗? 那个 传输项 实例来自 ApplicationWorkbenchWindowAdvisor ?

    你可以把它放在一个更容易访问的类中,甚至在需要的时候在哪里构建一个类。


    说到在执行长时间操作时显示百分比,我只想提到最新的任务图标 improvements in Eclipse3.6M6 (不是系统托盘,但现在它们可以提供良好的状态指示器)。参见 Snippet 336 举个例子。

    • 任务项覆盖图像

    新的API TaskItem#setOverlayImage(Image) 允许客户端将图像设置为显示在任务栏中应用程序按钮的顶部。

    alt text http://download.eclipse.org/eclipse/downloads/drops/S-3.6M6-201003121448/images/overlayimage.png

    • 任务项覆盖文本

    新的API TaskItem#setOverlayText(String) 允许客户端设置在任务栏中应用程序按钮顶部显示的短文本。

    alt text http://download.eclipse.org/eclipse/downloads/drops/S-3.6M6-201003121448/images/overlaytext.png

    • 任务项进度

    新API TaskItem#setProgress(int) TaskItem#setProgressState(int) 允许客户端在任务栏的应用程序按钮中显示进度指示。

    alt text http://download.eclipse.org/eclipse/downloads/drops/S-3.6M6-201003121448/images/progress.png