Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;

import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;

public class Main {

    public static void main(String[] args) throws Exception {
        Object[][] data = { { "A", new Integer(3), new Double(7.23), new Boolean(true) },
                { "J", new Integer(2), new Double(4.64), new Boolean(false) },
                { "S", new Integer(1), new Double(8.81), new Boolean(true) } };

        String[] columns = { "Col", "Col", "Col", "Col" };

        JTable table = new JTable(data, columns);
        JScrollPane scroll = new JScrollPane(table);

        JFrame f = new JFrame();
        f.setContentPane(scroll);
        f.pack();

        int x = (int) table.getTableHeader().getSize().getWidth();
        int y = (int) table.getTableHeader().getSize().getHeight() + (int) table.getSize().getHeight();

        BufferedImage bi = new BufferedImage((int) x, (int) y, BufferedImage.TYPE_INT_RGB);

        Graphics g = bi.createGraphics();
        table.getTableHeader().paint(g);
        g.translate(0, table.getTableHeader().getHeight());
        table.paint(g);
        g.dispose();

        JOptionPane.showMessageDialog(null, new JLabel(new ImageIcon(bi)));
        ImageIO.write(bi, "png", new File("c:/Java_Dev/table.png"));

        System.exit(0);
    }
}