这是我写的一个窗口.但是窗口高度显示不了全部文件.我要做一个滚动条怎么做啊..下面是代码import java.awt.GraphicsConfiguration;
import java.awt.HeadlessException;
import javax.swing.JFrame;
import java.awt.BorderLayout;
import javax.swing.JScrollPane;
import java.awt.Color;
import javax.swing.JPanel;
import java.awt.*;import javax.swing.DefaultListModel;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JTextField;
import javax.swing.JComboBox;
import javax.swing.JTextArea;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.net.URL;
import java.net.HttpURLConnection;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.FileOutputStream;
import java.io.File;
import javax.swing.filechooser.FileSystemView;
import javax.swing.event.AncestorEvent;
import javax.swing.event.AncestorListener;
import java.awt.Dimension;
import javax.swing.BorderFactory;/**
 * <p>
 * Title:
 * </p>
 * 
 * <p>
 * Description:
 * </p>
 * 
 * <p>
 * Copyright: Copyright (c) 2009
 * </p>
 * 
 * <p>
 * Company:
 * </p>
 * 
 * @author not attributable
 * @version 1.0
 */
public class MyFirstFrame extends JFrame {
JList list; public static void main(String[] args) throws IOException {
MyFirstFrame mf = new MyFirstFrame();
mf.setVisible(true);
} public MyFirstFrame() throws HeadlessException {
super();
try {
jbInit();
} catch (Exception ex) {
ex.printStackTrace();
}
} public MyFirstFrame(GraphicsConfiguration gc) {
super(gc);
} public MyFirstFrame(String title) throws HeadlessException {
super(title);
} public MyFirstFrame(String title, GraphicsConfiguration gc) {
super(title, gc);
} BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel1 = new JPanel();
JLabel jLabel1 = new JLabel();
JButton jButton1 = new JButton(); private void jbInit() throws Exception {
this.getContentPane().setLayout(borderLayout1);
this.getContentPane().setBackground(SystemColor.inactiveCaption);
jPanel1.setBackground(Color.lightGray);
jPanel1.setMinimumSize(new Dimension(52, 20));
jPanel1.setPreferredSize(new Dimension(10, 30));
jLabel1.setBackground(Color.lightGray);
jLabel1.setForeground(Color.red);
jLabel1.setAlignmentX((float) 0.5);
jLabel1.setDoubleBuffered(true);
jLabel1.setMaximumSize(new Dimension(108, 30));
jLabel1.setMinimumSize(new Dimension(108, 30));
jLabel1.setOpaque(true);
jLabel1.setPreferredSize(new Dimension(108, 30));
jLabel1.setToolTipText("");
jLabel1.setDisabledIcon(null);
jLabel1.setDisplayedMnemonic('0');
jLabel1.setText("请选择下载文件");
jButton1.setAlignmentX((float) 1.0);
jButton1.setAlignmentY((float) 1.0);
jButton1.setBorder(BorderFactory.createLoweredBevelBorder());
jButton1.setPreferredSize(new Dimension(22, 23));
jButton1.setToolTipText("");
jButton1.setHorizontalTextPosition(SwingConstants.CENTER);
jButton1.setMnemonic('0');
jButton1.setText("下载");
jButton1
.addActionListener(new MyFirstFrame_jButton1_actionAdapter(this));
UrlCon co = new UrlCon();
List l = co.getFile();
for (int i = 0; i < l.size(); i++) {
if (l.get(i).equals("WEB-INF")) {
l.remove(i);
}
}
Object[] str = new Object[l.size()];
str = l.toArray();
final DefaultListModel model = new DefaultListModel();
for (int i = 0, n = str.length; i < n; i++) {
model.addElement(str[i]);
}
list = new JList(model);
setSize(400, 300);
this.getContentPane().add(jButton1, java.awt.BorderLayout.SOUTH);
this.getContentPane().add(list, java.awt.BorderLayout.CENTER);
jPanel1.add(jLabel1);
this.getContentPane().add(jPanel1, java.awt.BorderLayout.NORTH);
} public void jButton1_actionPerformed(ActionEvent e) {
String targetFile;
FileSystemView fsv = FileSystemView.getFileSystemView(); // 得到系统视图对象
File root = fsv.getHomeDirectory();
JFileChooser chooser = new JFileChooser(root.getPath());
chooser.setSelectedFile(new File(root.getPath() + "\\"
+ list.getSelectedValue()));
chooser.setAcceptAllFileFilterUsed(false);
int result = chooser.showSaveDialog(null);
if (result == JFileChooser.APPROVE_OPTION) {
targetFile = chooser.getCurrentDirectory() + "\\"
+ chooser.getSelectedFile().getName();
File fileIn = chooser.getSelectedFile();
if (fileIn.exists()) {
JOptionPane.showMessageDialog(null, "文件已存在,请重新选择", "警告",
JOptionPane.WARNING_MESSAGE);
} else {
try {
UrlCon conn = new UrlCon();
conn.read(chooser.getCurrentDirectory().toString(), list
.getSelectedValue().toString());
// FileUtils.writeStringToFile(fileIn, content);
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "保存文件出错。", "警告",
JOptionPane.WARNING_MESSAGE);
}
} } }
}class MyFirstFrame_jButton1_actionAdapter implements ActionListener {
private MyFirstFrame adaptee; MyFirstFrame_jButton1_actionAdapter(MyFirstFrame adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}