SystemTray: getTrayIconSize() : SystemTray « java.awt « Java by API






SystemTray: getTrayIconSize()

  


import java.awt.AWTException;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.SystemTray;
import java.awt.TrayIcon;
import java.awt.image.BufferedImage;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;

public class Main {
  public static void main(String[] args) throws Exception {
    if (!SystemTray.isSupported()) {
      return;
    }
    SystemTray tray = SystemTray.getSystemTray();

    PropertyChangeListener pcl;
    pcl = new PropertyChangeListener() {
      public void propertyChange(PropertyChangeEvent pce) {
        System.out.println("Property changed = " + pce.getPropertyName());
        TrayIcon[] tia = (TrayIcon[]) pce.getOldValue();
        if (tia != null) {
          for (int i = 0; i < tia.length; i++)
            System.out.println(tia[i]);
        }

        tia = (TrayIcon[]) pce.getNewValue();
        if (tia != null) {
          for (int i = 0; i < tia.length; i++)
            System.out.println(tia[i]);
        }
      }
    };
    tray.addPropertyChangeListener("trayIcons", pcl);

    Dimension size = tray.getTrayIconSize();
    BufferedImage bi = new BufferedImage(size.width, size.height, BufferedImage.TYPE_INT_RGB);
    Graphics g = bi.getGraphics();

    g.setColor(Color.blue);
    g.fillRect(0, 0, size.width, size.height);
    TrayIcon icon = null;
    tray.add(icon = new TrayIcon(bi));

    Thread.sleep(3000);
    tray.remove(icon);

    Thread.sleep(3000);
    System.exit(0);
  }

}

   
    
  








Related examples in the same category

1.SystemTray: add(TrayIcon trayIcon)
2.SystemTray: addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
3.SystemTray: getSystemTray()
4.SystemTray: isSupported()
5.SystemTray: remove(TrayIcon trayIcon)