请看代码:import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class xxx{
public xxx(){
JFrame f=new JFrame();
Object[][] playerInfo={
{"小猪",new Integer(66),new Integer(32),new Integer(98),new Boolean(false)},
{"小猪",new Integer(82),new Integer(69),new Integer(128),new Boolean(true)},
{"小猪",new Integer(96),new Integer(69),new Integer(128),new Boolean(true)},
{"小猪",new Integer(82),new Integer(78),new Integer(128),new Boolean(true)},
}; 
String[] Names={"姓名","语文","数学","总分","及格"};

Vector<Object> v = new Vector<Object>();
Vector<Object> v1 = new Vector<Object>();
v.add(playerInfo);
v1.add(Names);

JTable table=new JTable(v,v1);//这一步错了。
table.setPreferredScrollableViewportSize(new Dimension(550,30));
JScrollPane scrollPane=new JScrollPane(table);

f.getContentPane().add(scrollPane,BorderLayout.CENTER);
f.setTitle("Simple Table");
f.setVisible(true);
f.pack();

f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});

public static void main(String[] args){
      xxx b=new xxx();
}
}问题:
JTable table=new JTable(v,v1);//这一步错了。
1、请问为什么?
2、请问怎么改?

解决方案 »

  1.   

    你直接把playerInfo和Names放入JTable不就行了 JTable table=new JTable(playerInfo,Names)
      

  2.   


    的确直接放进去就行了! 是这样的,我自己写了个代码,用Vector出错了,我才在上面给这个测试类xxx类里面用vector。请问,我上面的代码错在哪里呢?
    求教!
      

  3.   

    http://balmon2009.blog.163.com/blog/static/1361808472010047564719/
      

  4.   

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.*;
    public class Test{
        public Test(){
            JFrame f=new JFrame();
            Object[][] playerInfo={
                {"小猪",new Integer(66),new Integer(32),new Integer(98),new Boolean(false)},
                {"小猪",new Integer(82),new Integer(69),new Integer(128),new Boolean(true)},
                {"小猪",new Integer(96),new Integer(69),new Integer(128),new Boolean(true)},
                {"小猪",new Integer(82),new Integer(78),new Integer(128),new Boolean(true)},
            }; 
            String[] Names={"姓名","语文","数学","总分","及格"};
             
            Vector v = new Vector();
            Vector v1 = new Vector();
            for(int i=0; i<=Names.length-1; i++){
             v1.add(Names[i]);
            }
            for(int i=0; i<=playerInfo.length-1;i++){
             Vector vec = new Vector();
             for(int j=0; j<playerInfo[i].length-1; j++){
             vec.add(playerInfo[i][j]);
             }
             v.add(vec);
            }
            //v.add(playerInfo);
            //v1.add(Names);
            System.out.println(v.size());
            JTable table=new JTable(v,v1);//这一步错了。
            table.setPreferredScrollableViewportSize(new Dimension(550,30));
            JScrollPane scrollPane=new JScrollPane(table);
             
            f.getContentPane().add(scrollPane,BorderLayout.CENTER);
            f.setTitle("Simple Table");
            f.setVisible(true);
            f.pack();
             
            f.addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
        } 
        public static void main(String[] args){
         Test b=new Test();
        }
    }
      

  5.   


    谢谢你!
    顺便,你能不能再帮我看下另一个问题,谢谢:
    http://bbs.csdn.net/topics/390399486
    我两个贴一起结贴