package client.frame; import java.awt.Color; import java.awt.EventQueue; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; import javax.swing.JButton; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JProgressBar; import javax.swing.JTextField; import javax.swing.border.EmptyBorder; import client.control.RecieveThread; import client.control.SendTread; public class SendFileFrame extends JFrame { public JPanel contentPane; public JLabel lbl; public JProgressBar progressBar; public JLabel lblProgress; public RecieveThread recieveThread; /** * Create the frame. */ public SendFileFrame() { //this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 510, 196); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); lbl = new JLabel("进度条"); lbl.setBounds(42, 35, 74, 33); contentPane.add(lbl); progressBar = new JProgressBar(); progressBar.setForeground(Color.BLUE); progressBar.setBounds(96, 35, 332, 33); contentPane.add(progressBar); lblProgress = new JLabel(""); lblProgress.setBounds(64, 82, 386, 58); contentPane.add(lblProgress); } /** * @param bar * @param passlen * @param sumlen * @param lbl */ public void updateProgressBar(JProgressBar bar, long passlen, long sumlen, JLabel lbl, double passTime) { int percent = (int) (passlen * 100 / sumlen); bar.setValue(percent); if (lbl != null) { String msg = "正在接受文件....." + (passlen / 1024) + "kb" + " /" + (sumlen / 1024) + "kb" + "已接收 "+ percent + "%" + "\n 发射点" + (int) ((passlen / 1024) / (passTime / 1000)) + "Kb/s"; if (passlen == sumlen) msg = "传输完毕!"; lblProgress.setText(msg); } } /** * @param seletMode * @return */ public String showDialog(int seletMode) { JFileChooser chooser = new JFileChooser(); chooser.setFileSelectionMode(seletMode); chooser.setMultiSelectionEnabled(true);//璁剧疆澶氶?鏂囦欢 int result = chooser.showOpenDialog(this); if (result == JFileChooser.APPROVE_OPTION) { String filePath = chooser.getSelectedFile().getAbsolutePath(); return filePath; } return null; } }