17. oktober 2002 - 09:43
Der er
3 kommentarer og 1 løsning
udskriv indhold af en anden klasse
Hvordan får jeg min udskrivningsklasse til at udskrive indholdet af en anden klasse... min udskriv ser sådan ud.. Udskriv u = new Udskriv( <her skal min klasse være> ); men hvis jeg sætter min Blanket klasse ind så udskriver den en tom side.. men spørgsmålet ligger i hvordan får jeg den til at udskrive indholdet af getContentPane i Blanket klassen..?
Annonceindlæg fra HP
17. oktober 2002 - 10:55
#3
min udskriv klasse ser således ud...: import java.awt.*; import java.awt.print.*; import javax.swing.JComponent; public class Udskriv implements Printable { private Component component; public Udskriv( Component c ) { component = c; } public int print( Graphics g, PageFormat pageFormat, int pageIndex ) { if(pageIndex >= 1) { return NO_SUCH_PAGE; } Graphics2D g2 = (Graphics2D) g; g2.translate( pageFormat.getImageableX(), pageFormat.getImageableY() ); boolean wasBuffered = disableDoubleBuffering( component ); component.paint( g2 ); restoreDoubleBuffering( component, wasBuffered ); return PAGE_EXISTS; } private boolean disableDoubleBuffering( Component c ) { if( c instanceof JComponent == false ) { return false; } JComponent jc = (JComponent) c; boolean wasBuffered = jc.isDoubleBuffered(); jc.setDoubleBuffered(false); return wasBuffered; } private void restoreDoubleBuffering( Component c, boolean wasBuffered ) { if ( c instanceof JComponent ) ((JComponent) c).setDoubleBuffered( wasBuffered ); } }