posts - 39,  comments - 157,  trackbacks - 0
  2007年1月3日

swt 简单的托盘程序
java写和操作系统相关的程序难度非常大。在java 6出现之前,如果你想实现一个托盘程序,最简单的就是用swt了。
通过google我找到了一段代码。
其实很简单。主要的代码如下:
             final Tray tray = display.getSystemTray();
            final TrayItem trayItem = new TrayItem(tray, SWT.NONE);
            Image image = new Image (display, 16, 16);
            trayItem.setImage(image);
知道了重点,事情变的很简单了。看看所有程序
//-----------------
public class SystemTray extends Shell {
    public static void main(String args[]) {
        try {
            Display display = Display.getDefault();
            SystemTray shell = new SystemTray(display, SWT.SHELL_TRIM);
           // shell.createSystemTray(shell);
            final Tray tray = display.getSystemTray();
            final TrayItem trayItem = new TrayItem(tray, SWT.NONE);
            Image image = new Image (display, 16, 16);
            trayItem.setImage(image);
            shell.open();
            shell.layout();
            while (!shell.isDisposed()) {
                if (!display.readAndDispatch())
                    display.sleep();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public SystemTray(Display display, int style) {
        super(display, style);
        createContents();
    }

    /**
     * Create contents of the window
     */
    protected void createContents() {
        setText("SWT Application");
        setSize(500, 375);

    }
    //swt 默认情况下不允许shell被继承
    //所以我重载了父类的方法
    protected void checkSubclass() {
         }
}
//--------------------
如果你想成功运行以上代码,你最好在eclipse下新建一个swt的类。具体操作你搜索一下吧。
但是上面的代码只是加入了托盘,这可能是最简单的实现托盘的程序了。我们加入事件处理,让程序能够最大和最小化。然后把托盘用图片来表示。
详细的代码不参考
下载 到eclipse里运行

posted @ 2007-01-03 22:58 nake 阅读(1198) | 评论 (4)编辑 收藏
<2007年1月>
31123456
78910111213
14151617181920
21222324252627
28293031123
45678910

常用链接

留言簿(6)

我参与的团队

随笔档案(39)

收藏夹(1)

搜索

  •  

积分与排名

  • 积分 - 81165
  • 排名 - 111

最新评论

阅读排行榜

评论排行榜