import java.awt.*;
import java.awt.print.*;
import javax.swing.*;public class ClipTest { protected JTable table; public static void main(String[] args) {
ClipTest ct = new ClipTest();
} public ClipTest() {
table = new JTable(new SampleTableModel ());
table.setSize(table.getPreferredSize());
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(new MyPrintable());
try {
job.print();
} catch (PrinterException pe) {};
System.exit(0);
} class MyPrintable implements Printable { public int print(Graphics g, PageFormat pf, int index) {
int positionX = (int)(pf.getImageableX());
int positionY = (int)(pf.getImageableY());
int width = (int)(pf.getImageableWidth());
g.clipRect (positionX, positionY, width, 500);
g.translate(positionX, positionY);
int pixelIndex = index * 500;
if (pixelIndex < table.getHeight()) {
g.translate(0, -pixelIndex);
table.paint(g);
return Printable.PAGE_EXISTS;
}
return Printable.NO_SUCH_PAGE;
} }}
import java.awt.print.*;
import javax.swing.*;public class ClipTest { protected JTable table; public static void main(String[] args) {
ClipTest ct = new ClipTest();
} public ClipTest() {
table = new JTable(new SampleTableModel ());
table.setSize(table.getPreferredSize());
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(new MyPrintable());
try {
job.print();
} catch (PrinterException pe) {};
System.exit(0);
} class MyPrintable implements Printable { public int print(Graphics g, PageFormat pf, int index) {
int positionX = (int)(pf.getImageableX());
int positionY = (int)(pf.getImageableY());
int width = (int)(pf.getImageableWidth());
g.clipRect (positionX, positionY, width, 500);
g.translate(positionX, positionY);
int pixelIndex = index * 500;
if (pixelIndex < table.getHeight()) {
g.translate(0, -pixelIndex);
table.paint(g);
return Printable.PAGE_EXISTS;
}
return Printable.NO_SUCH_PAGE;
} }}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货