標籤:swt java
package com.yc.utils;
import java.sql.SQLException;
public class ShellUtil { private boolean flag=false; private int xx; //點擊介面時滑鼠所在的位置的x軸 private int yy; //點擊介面時滑鼠所在位置的y軸
//主面板關閉按鈕監聽事件 public void OpbuttonClose(final Label label,final Shell shell,final String uaccount ){ label.addMouseTrackListener(new MouseTrackAdapter() { @Override public void mouseExit(MouseEvent e) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_close_normal.png")); } });
label.addMouseMoveListener(new MouseMoveListener() { public void mouseMove(MouseEvent arg0) { //滑鼠移動時的背景圖 label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_close_highlight.png")); } });
//滑鼠監聽事件
label.addMouseListener(new MouseAdapter() { @Override public void mouseDown(MouseEvent e) { //滑鼠按下時的背景圖 label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_close_down.png")); }
@Override public void mouseUp(MouseEvent e) { //滑鼠鬆開時 if(MessageDialog.openConfirm(parent.getShell(),"溫馨提示","您確認要退出嗎?"); ){ shell.close(); } } });}
//關閉按鈕事件public void buttonClose(final Label label,final Shell shell){ label.addMouseTrackListener(new MouseTrackAdapter() { @Override public void mouseExit(MouseEvent e) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_close_normal.png")); } });
label.addMouseMoveListener(new MouseMoveListener() { public void mouseMove(MouseEvent arg0) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_close_highlight.png")); } });
label.addMouseListener(new MouseAdapter() { @Override public void mouseDown(MouseEvent e) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_close_down.png")); } @Override public void mouseUp(MouseEvent e) { shell.close(); } });}
//最小化按鈕事件public void buttonMin(final Label label,final Shell shell){ label.addMouseTrackListener(new MouseTrackAdapter() { @Override public void mouseExit(MouseEvent e) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_mini_normal.png")); } });
label.addMouseMoveListener(new MouseMoveListener() { public void mouseMove(MouseEvent arg0) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_mini_highlight.png")); } });
label.addMouseListener(new MouseAdapter() { //最小化介面 @Override public void mouseDown(MouseEvent e) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_mini_down.png")); }
public void mouseUp(MouseEvent e) { shell.setMinimized(true); } });}
//最大化按鈕事件public void buttonMax(final Label label,final Shell shell){ label.addMouseTrackListener(new MouseTrackAdapter() { @Override public void mouseExit(MouseEvent e) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_max_normal.png")); } });
label.addMouseMoveListener(new MouseMoveListener() { public void mouseMove(MouseEvent arg0) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_max_highlight.png")); } });
label.addMouseListener(new MouseAdapter() { //最大化介面 @Override public void mouseDown(MouseEvent e) { label.setImage(SWTResourceManager.getImage(Login.class, "/pic/btn_max_down.png")); shell.setMaximized(true); } });}
//移動介面方法public void shellMove(final Composite composite,final Shell shell){ composite.addMouseMoveListener(new MouseMoveListener() { public void mouseMove(MouseEvent arg0) { if(flag){ shell.setBounds(shell.getLocation().x+arg0.x-xx, shell.getLocation().y+arg0.y-yy ,shell.getBounds().width, shell.getBounds().height); } } });
composite.addMouseListener(new MouseAdapter() { @Override public void mouseDown(MouseEvent e) { flag = true; xx = e.x; yy = e.y; }
@Override public void mouseUp(MouseEvent e) { flag=false; } }); }}
shell設為NONE後的一些操作