/** */ /** * 选择文件对话框 */ package filetrans; import java.awt. * ; import java.awt.event. * ; import javax.swing. * ; import java.io. * ; import transSocket. * ; import javax.swing.UIManager; import javax.swing.border.TitledBorder; public class FileTransFrame extends JFrame ... { private int height=Toolkit.getDefaultToolkit().getScreenSize().height; private int width=Toolkit.getDefaultToolkit().getScreenSize().width; private Container contentPane; private TitledBorder titledBorder1; private JButton sendButton; private JButton selectButton; private JTextField fileField; private JButton cancelButton; private JLabel fileLabel; private JFrame frame=this; private String filePath; private String desIP; public FileTransFrame(String desIP)...{ this.desIP=desIP; jbInit(); } /** *//** * 初始化 */ public void jbInit()...{ filePath=""; titledBorder1=new TitledBorder(""); sendButton=new JButton("发送"); selectButton=new JButton("选择"); cancelButton=new JButton("清空"); fileField=new JTextField(14); fileLabel=new JLabel("文件位置:"); this.contentPane=this.getContentPane(); this.contentPane.setLayout(null); this.contentPane.setBackground(Color.white); fileLabel.setBorder(titledBorder1); fileLabel.setBounds(new Rectangle(30,90,70,30)); fileField.setBorder(titledBorder1); fileField.setBounds(new Rectangle(100,90,160,30)); selectButton.setBorder(titledBorder1); selectButton.setBounds(new Rectangle(280,90,70,30)); /** *//** * 选择文件按钮处理事件 * 调用FileChooser类及方法 */ selectButton.addActionListener(new ActionListener()...{ public void actionPerformed(ActionEvent e1)...{ try...{ FileChooser fileChooser=new FileChooser(frame); fileChooser.setSelectFileChooser(); int i=fileChooser.getSelectButton(); if(i==JFileChooser.APPROVE_OPTION)...{ String filePath=fileChooser.getSelectFile(); SetFilefield(filePath); } else if(i==JFileChooser.CANCEL_OPTION) SetFilefield(""); else SetFilefield(""); } catch(Exception e2)...{ e2.printStackTrace(); } } }); sendButton.setBorder(titledBorder1); sendButton.setBounds(new Rectangle(100,140,70,30)); /** *//** * 发送按钮处理 */ sendButton.addActionListener(new ActionListener()...{ public void actionPerformed(ActionEvent e)...{ String path1=getFilefield(); System.out.println(path1); TransClientSocket clientSocket=new TransClientSocket(path1,desIP); clientSocket.start(); frame.dispose(); } }); cancelButton.setBorder(titledBorder1); cancelButton.setBounds(new Rectangle(200,140,70,30)); /** *//** * 取消按钮处理,清空选择的文件路径 */ cancelButton.addActionListener(new ActionListener()...{ public void actionPerformed(ActionEvent e3)...{ SetFilefield(""); } }); this.contentPane.add(fileLabel); this.contentPane.add(fileField); this.contentPane.add(selectButton); this.contentPane.add(sendButton); this.contentPane.add(cancelButton); Image image=Toolkit.getDefaultToolkit().createImage("picture/goo.gif"); this.setIconImage(image); this.setTitle("文件传送"); this.setLocation(width/4+50,height/4+50); this.setSize(400,300); this.setVisible(true); this.setResizable(false); } /** *//** * 设定/获得文件路径 */ public void SetFilefield(String st)...{ this.filePath=st; this.fileField.setText(filePath); } public String getFilefield()...{ return filePath; }}