salesreport.java

来自「jdbc书」· Java 代码 · 共 288 行 · 第 1/2 页

JAVA
288
字号
import javax.swing.*;
import javax.swing.table.*;

import java.awt.print.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.Dimension;

public class SalesReport extends JApplet implements Printable {

    JTable ppTable;
    JTableHeader tableHeader;
    int [] subTableSplit = null;
    boolean pageinfoCalculated=false;
    int totalNumPages=0;
    int prevPageIndex = 0;
    int subPageIndex = 0;
    int subTableSplitSize = 0;
    double tableHeightOnFullPage, headerHeight;
    double pageWidth, pageHeight;
    int fontHeight, fontDesent;
    double tableHeight, rowHeight;


    public void init() {

        final String[] headers = {"Description", "open price", "latest price", "End Date", "Quantity", "a", "b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"};
        final Object[][] data = {
	    {"Box of Biros", "1.00", "4.99", new Date(), new Integer(2), "a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"Blue Biro", "0.10", "0.14", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"legal pad", "1.00", "2.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"legal pad", "1.00", "2.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"legal pad", "1.00", "2.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"legal pad", "1.00", "2.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"tape", "1.00", "1.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"stapler", "4.00", "4.49", new Date(), new Integer(1),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"},
	    {"legal pad", "1.00", "2.29", new Date(), new Integer(5),"a","b", "c", "d", "e", "f", "g", "h", "i","j","k","l","m","n"}
        };

        TableModel dataModel = new AbstractTableModel() {
            public int getColumnCount() { return headers.length; }
            public int getRowCount() { return data.length;}
            public Object getValueAt(int row, int col) {return data[row][col];}

            public String getColumnName(int column) {return headers[column];}
            public Class getColumnClass(int col) {return getValueAt(0,col).getClass();}
            public boolean isCellEditable(int row, int col) {return (col==1);}
            public void setValueAt(Object aValue, int row, int column) {
                data[row][column] = aValue;
            }
         };

	ppTable = new JTable(dataModel);
        JScrollPane scrollpane = new JScrollPane(ppTable);

        scrollpane.setPreferredSize(new Dimension(500, 80));
	getContentPane().setLayout(new BorderLayout());
        getContentPane().add(BorderLayout.CENTER,scrollpane);
	JButton printButton= new JButton();

	printButton.setText("print me!");

	getContentPane().add(BorderLayout.SOUTH,printButton);

	// for faster printing turn double buffering off

	RepaintManager.currentManager(this).setDoubleBufferingEnabled(false);

	printButton.addActionListener( new ActionListener(){
	    public void actionPerformed(ActionEvent evt) {
	        PrinterJob pj=PrinterJob.getPrinterJob();

		pj.setPrintable(SalesReport.this);
		pj.printDialog();

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?