TrayIcon.java 文件源码

java
阅读 34 收藏 0 点赞 0 评论 0

项目:EarthquakeBulletin 作者:
public void showBalloonToolTip(final Earthquake earthquake) {
    if (trayItem != null && !trayItem.isDisposed()) {
        final StringBuilder text = new StringBuilder();
        text.append("M ").append(earthquake.getMagnitude()).append(", ").append(earthquake.getRegion());

        final StringBuilder message = new StringBuilder();
        final DateFormat df = ResultsTable.dateFormat.get();
        df.setTimeZone(TimeZone.getTimeZone(configuration.getString("timezone", EarthquakeBulletin.Defaults.TIME_ZONE_ID)));
        message.append(df.format(earthquake.getTime())).append(' ');
        message.append(earthquake.getLatitude()).append(' ');
        message.append(earthquake.getLongitude()).append(' ');
        message.append(earthquake.getDepth()).append(' ');
        message.append(earthquake.getStatus());

        final ToolTip toolTip;
        if (earthquake.getMagnitude() >= configuration.getFloat("magnitude.xxl", ResultsTable.Defaults.MAGNITUDE_XXL)) {
            toolTip = toolTips.get(SWT.ICON_ERROR);
        }
        else if (earthquake.getMagnitude() >= configuration.getFloat("magnitude.big", ResultsTable.Defaults.MAGNITUDE_BIG)) {
            toolTip = toolTips.get(SWT.ICON_WARNING);
        }
        else {
            toolTip = toolTips.get(SWT.ICON_INFORMATION);
        }

        try {
            trayItem.getDisplay().syncExec(new Runnable() {
                @Override
                public void run() {
                    logger.log(Level.FINE, "{0}", text);
                    trayItem.setToolTip(toolTip);
                    toolTip.setText(text.toString().trim());
                    toolTip.setMessage(message.toString().trim());
                    toolTip.setVisible(true);
                }
            });
        }
        catch (final RuntimeException e) {
            logger.log(Level.WARNING, e.toString(), e);
        }
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号