天天看点

JAVAGUI

该测试得到了软件界面缩小或关闭时会弹到系统右下角托盘中,得到提示,右键选择关闭或显示。

//在createContents(){内添加 createTray();}

public void createTray(){

//泡泡型提示

final ToolTip tip=new ToolTip(shell,SWT.BALLOON | SWT.ICON_INFORMATION);//创建托盘项

sgw=shell.getDisplay().getSystemTray();//确定系统托盘对象

if(sgw!=null){//判断系统托盘对象是否为空

final TrayItem tt=new TrayItem(sgw,SWT.NONE);//创建托盘项

tt.setToolTipText("sgw的托盘第一次测试!");//托盘提示文字

tt.setImage(new Image(shell.getDisplay(),"D:\\办公文件\\eclipse\\mycode\\NewToolBar\\src\\cn\\image\\image\\1.ICO"));

//添加托盘图标

tt.setToolTip(tip);//为托盘项创建弹出式菜单

final Menu mu=new Menu(shell,SWT.POP_UP);//创建托盘项弹出菜单

final MenuItem mi=new MenuItem(mu,SWT.PUSH);//创建显示或隐藏菜单项

mi.setText("躲着&H");//设置菜单项文本

mi.addSelectionListener(new SelectionAdapter(){//显示或隐藏菜单项选择监听器

public void widgetSelected(SelectionEvent e){

boolean mf=shell.isVisible();//菜单项是否可见

shell.setVisible(!mf);

mi.setText(mf?"出来&W":"躲着&H");

tip.setText("sgw的托盘图标");

tip.setMessage("右键选择图标,可弹出我的选择菜单");

tip.setVisible(true);

//如果窗体是显示的,则菜单项为隐藏;如果窗体是隐藏的,则菜单项显示;

}

});

MenuItem me=new MenuItem(mu,SWT.PUSH);

me.setText("离开&X");

me.addSelectionListener(new SelectionAdapter(){

public void widgetSelected(SelectionEvent e){

shell.dispose();

}

});

tt.addSelectionListener(new SelectionAdapter(){

public void widgetDefaultSelected(SelectionEvent arg0){

shell.setVisible(!shell.isVisible());

}

public void widgetSelected(SelectionEvent arg0){

}

});

tt.addMenuDetectListener(new MenuDetectListener(){

public void menuDetected(MenuDetectEvent arg0){

mu.setVisible(true);

}

});

shell.addShellListener(new ShellAdapter(){

public void shellClosed(ShellEvent e){

super.shellClosed(e);

e.doit=false;

shell.setVisible(false);

mi.setText("出来&W");

tip.setText("sgw的托盘图标");

tip.setMessage("右键选择图标,可弹出我的选择菜单");

tip.setVisible(true);

}

public void shellIconified(ShellEvent e){

super.shellIconified(e);

shellClosed(e);

}

});

}

else{

tip.setText("你不支持托盘效果");

tip.setLocation(400,400);

}

}