免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1469 | 回复: 2
打印 上一主题 下一主题

[急!!在线等!!]大家帮我看一下这程序,怎么不能将数据加入到JTable中呀~~ [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-05 19:43 |只看该作者 |倒序浏览
import java.io.File;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.table.*;

public class OpenFile extends JFrame implements ActionListener
{
private JButton b1;
private String[] n;
private JTable table1;
DefaultTableModel defaultmodel;

public OpenFile()
{
super("打开的文件");
Container c1=getContentPane();
c1.setLayout(new FlowLayout());
JButton b1= new JButton("选择文件");
b1.addActionListener(this);
JPanel panel=new JPanel();
panel.add(b1);
c1.add(panel,BorderLayout.NORTH);
String[] n={"选择的文件名","文件大小"};
DefaultTableModel defaultmodel=new DefaultTableModel(n,0);
JTable table1=new JTable(defaultmodel);
JScrollPane jscrollTable1=new JScrollPane(table1);
c1.add(jscrollTable1,BorderLayout.CENTER);
setSize(500,200);
show();
}

static public void main(String arg[])
{
new OpenFile();
}

public void actionPerformed(ActionEvent e)
{
JFileChooser f1=new JFileChooser();
int returnVal=f1.showOpenDialog(this);
if(returnVal==JFileChooser.APPROVE_OPTION)
{
     File file=f1.getSelectedFile();
     try
     {
String fn=file.getName();
         String fs=String.valueOf(file.length());
         System.out.println("文件名:"+fn+"\n"+"文件大小:"+fs);
         defaultmodel.addRow(new Object[] {fn,fs});
         table1.revalidate();
     }
                     catch(Exception ex)
     {
         System.out.print(ex.getMessage());
         System.exit(-1);
     }

}
else
{
}

}
}

====================================================================================
====================================================================================
我也不知怎么搞的,我这个程序总是不能增加一行数据到JTable中,编译没有问题,但运行选择
文件后,就抛出异常(null)。急切各位帮忙!!

我这个程序要想实现的功能是:在窗中中有一个“打开文件”的按钮,然后出现一个JFileChooser
对话框,选中一个本地文件,最后将这个选中了的文件的文件名(fn)和文件大小(fs)放入到JTabl中
,可现在我这个程序就是不能放进去,抛出异常,望各位高手帮小弟修改一下,谢谢!!

论坛徽章:
0
2 [报告]
发表于 2006-05-05 22:27 |只看该作者

  1. import java.awt.BorderLayout;
  2. import java.awt.Container;
  3. import java.awt.FlowLayout;
  4. import java.awt.event.ActionEvent;
  5. import java.awt.event.ActionListener;
  6. import java.io.File;

  7. import javax.swing.JButton;
  8. import javax.swing.JFileChooser;
  9. import javax.swing.JFrame;
  10. import javax.swing.JPanel;
  11. import javax.swing.JScrollPane;
  12. import javax.swing.JTable;
  13. import javax.swing.table.DefaultTableModel;

  14. public class OpenFile extends JFrame implements ActionListener {
  15.         private JButton b1;

  16.         private String[] n;

  17.         private JTable table1;

  18.         DefaultTableModel defaultmodel;

  19.         public OpenFile() {
  20.                 super("打开的文件");
  21.                 Container c1 = getContentPane();
  22.                 c1.setLayout(new FlowLayout());
  23.                 JButton b1 = new JButton("选择文件");
  24.                 b1.addActionListener(this);
  25.                 JPanel panel = new JPanel();
  26.                 panel.add(b1);
  27.                 c1.add(panel, BorderLayout.NORTH);
  28.                 String[] n = { "选择的文件名", "文件大小" };
  29.                 defaultmodel = new DefaultTableModel(n, 0);
  30.                 JTable table1 = new JTable(defaultmodel);
  31.                 JScrollPane jscrollTable1 = new JScrollPane(table1);
  32.                 c1.add(jscrollTable1, BorderLayout.CENTER);
  33.                 setSize(500, 200);
  34.                 show();
  35.         }

  36.         static public void main(String arg[]) {
  37.                 new OpenFile();
  38.         }

  39.         public void actionPerformed(ActionEvent e) {
  40.                 JFileChooser f1 = new JFileChooser();
  41.                 int returnVal = f1.showOpenDialog(this);
  42.                 if (returnVal == JFileChooser.APPROVE_OPTION) {
  43.                         File file = f1.getSelectedFile();
  44.                         try {
  45.                                 String fn = file.getName();
  46.                                 String fs = String.valueOf(file.length());
  47.                                 System.out.println("文件名:" + fn + "\n" + "文件大小:" + fs);
  48.                                 defaultmodel.addRow(new Object[] { fn, fs });
  49.                                 table1.revalidate();
  50.                         } catch (Exception ex) {
  51.                                 System.out.print(ex.getMessage());
  52.                         }

  53.                 } else {
  54.                 }
  55.         }
  56. }
复制代码

论坛徽章:
0
3 [报告]
发表于 2006-05-06 01:45 |只看该作者
嗯,真是非常谢谢~~
现在我才发现在我错在哪里,真是太粗心了,呵

[ 本帖最后由 chinahiphop 于 2006-5-6 01:56 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP