java-Socket文件上传/进度条 (二)

2014-11-24 07:28:25 · 作者: · 浏览: 2
}
public void setCloseBtn(JButton closeBtn) {
this.closeBtn = closeBtn;
}
public JinDuBar(String title,String bgImg){
setAlwaysOnTop(true);
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
JPanel splash = new JPanel(new BorderLayout());
JPanel top = new JPanel();
top.setBackground(new Color(255,153,204));
BorderLayout toplay = new BorderLayout();
top.setLayout(toplay);
JLabel tt = new JLabel(title);
ImageIcon cloImg = new ImageIcon(System.getProperty("user.dir") + "/bin/image/4.png");
closeBtn = new JButton("close ",cloImg);
closeBtn.setBackground(new Color(255,153,204));
top.add(tt, BorderLayout.CENTER);
top.add(closeBtn, BorderLayout.EAST);
top.add(new JLabel(" "), BorderLayout.WEST);
splash.add(top,BorderLayout.NORTH);
ImageIcon img = new ImageIcon(bgImg);
btn = new JButton(img);
getLayeredPane().add(btn, new Integer(Integer.MIN_VALUE));
btn.setBounds(0,0,img.getIconWidth(),img.getIconHeight());
GridLayout gl = new GridLayout(this.getLabels().length,1); //labels.length行1列
btn.setLayout(gl);
for(int i = 0; i this.getLabels()[i] = new JLabel("000"+i);
btn.add(labels[i]);
}
splash.add(btn, BorderLayout.CENTER);
progress = new JProgressBar(1, 100);
progress.setStringPainted(true);
progress.setBorderPainted(false);
progress.setString("0%");
progress.setBackground(Color.WHITE);
splash.add(progress, BorderLayout.SOUTH);
setContentPane(splash);
Dimension screen = getToolkit().getScreenSize();
setSize(img.getIconWidth(), img.getIconHeight()+60);
setLocation((screen.width - getSize().width)/2, (screen.height - getSize().height)/2);
new DragJWindow(this, splash); //设置窗口可拖动 www.2cto.com
setVisible(true);
}
}
/********************************/
3、设置Window窗口可拖动
package wtb.util;
import javax.swing.SwingUtilities;
import java.awt.Component;
import java.awt.Point;
import java.awt.Window;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionAdapter;
public class DragJWindow {
private Window fWindow;
private Component fComponent;
private int dX;
private int dY;
public DragJWindow(Window window, Component component) {
fWindow = window;
fComponent = component;
fComponent.addMouseListener(createMouseListener());
fComponent.addMouseMotionListener(createMouseMotionListener());
}
private MouseListener createMouseListener() {
return new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e) {
Point clickPoint = new Point(e.getPoint());
SwingUtilities.convertPointToScreen(clickPoint, fComponent);
dX = clickPoint.x - fWindow.getX();
dY = clickPoint.y - fWindow.getY();
}
};
}
private MouseMotionAdapter createMouseMotionListener() {
return new MouseMotionAdapter() {
@Override
public void mouseDragged(MouseEvent e) {
Point dragPoint = new Point(e.getPoint());
SwingUtilities.convertPointToScreen(dragPoint, fCom