Avatar billede bsp Nybegynder
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..?
Avatar billede disky Nybegynder
17. oktober 2002 - 10:04 #1
Får de overført data imellem hinanden ?
Avatar billede arne_v Ekspert
17. oktober 2002 - 10:12 #2
Hvordan ser Udskriv klassen ud ?

Enten skal Udskriv kende noget til den klasse
der skal udskrives - eller så skal den bruge
reflektion.
Avatar billede bsp Nybegynder
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 );
  }
}
Avatar billede bsp Nybegynder
20. oktober 2002 - 16:39 #4
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester