美文网首页程序员
JTable——三种基础创建方法

JTable——三种基础创建方法

作者: 天香阁主 | 来源:发表于2018-06-25 15:31 被阅读0次

1.方法1

        不提供任何数据,也不创建列和行。

1.1代码

public class Main {

    public static void main(String[] args){
        JFrame jf = new JFrame("JTable");
        jf.setBounds(400, 200, 1000, 800);
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JScrollPane scrollPane=new JScrollPane();
        JTable table=new JTable();
        GroupLayout groupLayout=new GroupLayout(jf.getContentPane());
        groupLayout.setHorizontalGroup(groupLayout.createSequentialGroup()
                .addComponent(scrollPane));
        groupLayout.setVerticalGroup(groupLayout.createSequentialGroup()
                .addComponent(scrollPane));
        scrollPane.setViewportView(table);
        jf.setVisible(true);
    }
}

1.2效果

方法一效果

        从图片可以直观的看出,生成的就是零行零列的表,从界面来看就是一片空白,啥都没有,没啥好说的。

2.方法2

        不提供任何数据,但是创建列和行。

2.1代码

public class Main {

    public static void main(String[] args){
        JFrame jf = new JFrame("JTable");
        jf.setBounds(400, 200, 1000, 800);
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JScrollPane scrollPane=new JScrollPane();
        JTable table=new JTable(10,3);
        GroupLayout groupLayout=new GroupLayout(jf.getContentPane());
        groupLayout.setHorizontalGroup(groupLayout.createSequentialGroup()
                .addComponent(scrollPane));
        groupLayout.setVerticalGroup(groupLayout.createSequentialGroup()
                .addComponent(scrollPane));
        scrollPane.setViewportView(table);
        jf.setVisible(true);
    }
}

2.2效果

方法二效果-1

        从图中可以很容易地发现一个有意思的地方,那就是表的列头竟然是ABC,因为我们是没有提供表头的,那么如果把当前的3列改为27,会怎么样呢?


方法二效果-2

        通过上面两张图,可以很明显的得出一个结论,就是在我们没有提供列头的情况下,Java会默认提供列头。但是这种情况,很明显不是我们想要的显示结果。

3.方法3

        提供数据(单元格内容和列头)并且创建列和行。

3.1代码

public class Main {

    public static void main(String[] args) {
        JFrame jf = new JFrame("JTable");
        jf.setBounds(400, 200, 1000, 800);
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JScrollPane scrollPane = new JScrollPane();
        JTable table = getThreeMethodTable();
        GroupLayout groupLayout = new GroupLayout(jf.getContentPane());
        groupLayout.setHorizontalGroup(groupLayout.createSequentialGroup()
                .addComponent(scrollPane));
        groupLayout.setVerticalGroup(groupLayout.createSequentialGroup()
                .addComponent(scrollPane));
        scrollPane.setViewportView(table);
        jf.setVisible(true);
    }

    private static JTable getThreeMethodTable() {
        String[][] data = new String[][]{{"1", "1", "1"}, {"2", "2", "2"}, {"3", "3", "3"}};
        String[] columnNames = new String[]{"test1", "test2", "test3"};
        JTable jTable = new JTable(data, columnNames);
        return jTable;
    }
}

3.2效果

方法三效果

        这种方法是一般最常用的方法,也是最基础最简单的方法,但正因为最基础,所以有很大局限性,比如说显示自定义类型的数据,就需要另写渲染,以及添加索引行,移动数据、排序、显示图片等等都不适合用这种方法,而上面提到的在Table显示图片,移动数据、排序等内容会在以后文章中陆续总结。但是,如果只是用来显示一些基础类型的数据,不会对数据做动态操作,那么这种方法是完全够用了。

相关文章

  • JTable——三种基础创建方法

    1.方法1 不提供任何数据,也不创建列和行。 1.1代码 1.2效果 从图片可以直观的看出,生成的就是零行零列的表...

  • Java图形化:Swing表格的使用

    利用JTable类直接创建表格 创建表格: 在JTable类中除了默认的构造方法之外,还提供了利用指定表格列名数组...

  • Java图形化:Swing表格的使用

    在JTable类中除了默认的构造方法之外,还提供了利用指定表格列名数组和表格数据数组创建表格的构造方法,如下: J...

  • js基础篇(一)——数组的各种操作

    js基础篇(三)——DOM的各种操作js基础篇(二)——字符串的各种操作 1. 创建数组 创建一个数组,有三种方法...

  • 3-9 原型链

    一为考察原型链打下基础,一为了解面向对象打下基础 创建对象有几种方法通常就三种方法:1: 对象字面量的方式var ...

  • 2018-03-26

    MYSQL面试题 MYSQL:(三种创建,四条语句,五种约束) 三种方法:MySQL创建用户的方法分成三种:INS...

  • 关于线程你需要了解的

    java中创建线程的三种方法以及区别: 三种创建线程方法对比 实现Runnable和实现Callable接口的方式...

  • c++创建对象的三种方法

    c++创建对象的三种方法 c++有三种方法创建对象 结合代码来看 1#include 2usingnamespac...

  • Javascript之对象

    本文仅粗略罗列一下对象的基础知识,做个小小总结,不涉及原理。 目录: 对象创建的三种方法 对象访问的两种方法 对象...

  • javascript 对象

    创建对象的三种方法: 字面量 obj = {}、obj = new Object()、构造函数 字面量方法创建对象...

网友评论

    本文标题:JTable——三种基础创建方法

    本文链接:https://www.haomeiwen.com/subject/rgjyyftx.html