Avatar billede zyke Nybegynder
04. april 2001 - 12:25 Der er 5 kommentarer og
2 løsninger

Print en side

Hvordan printer man hele indholdet af en JFrame ud?
Avatar billede kama Nybegynder
04. april 2001 - 13:55 #1
Hvis du mener en simpel usdkrift af selve skærmbilledet, så kan du bare trykke Alt-Print Screen. Dernæst kan du kopiere det ind i et billedbehandlingsprogram eller evt. Word med Ctrl-c.

/kama 
Avatar billede bacardil Nybegynder
04. april 2001 - 14:00 #2
Avatar billede kama Nybegynder
04. april 2001 - 14:08 #3
>>bacardil: hvad har JFrames med HTML-frames at gøre?
Avatar billede bacardil Nybegynder
04. april 2001 - 14:14 #4
>>kama: hvad har JFrames med java at gøre?
Avatar billede kama Nybegynder
04. april 2001 - 16:48 #5
>>bacardil: JFrame er udvidelse af java.awt.Frame som tilføjer JFC/Swing understøttelse til Javas komponent-arkitektur.
Avatar billede zyke Nybegynder
05. april 2001 - 12:13 #6
Hold da op... øhh... :) ... Jeg skal lave en funktion, som når jeg i JAVA!!! trykker på en knap, får jeg printet enten hele siden ud eller måske bare et tekstarea!
Avatar billede kama Nybegynder
05. april 2001 - 15:16 #7
Her er et eksempel på hvorledes, at du kan udskrive indholdet af et JTextArea i en JFrame. Det gøres via et menupunkt, men du kan jo nemt lave det om til en knap.

import java.awt.*;
import java.awt.event.*;
import java.awt.print.*;
import javax.swing.*;
import javax.swing.event.*;

public class SwingPrinter extends JFrame {
  public static void main(String[] args) {
    new SwingPrinter();
  }
 
  private PageFormat mPageFormat;
 
  public SwingPrinter() {
    super(\"SwingPrinter\");
    createUI();
    PrinterJob pj = PrinterJob.getPrinterJob();
    mPageFormat = pj.defaultPage();
    setVisible(true);
  }

  protected void createUI() {
    setSize(300, 300);

    JMenuBar mb = new JMenuBar();
    JMenu file = new JMenu(\"File\", true);
    file.add(new FilePrintAction()).setAccelerator(
        KeyStroke.getKeyStroke(KeyEvent.VK_P, Event.CTRL_MASK));
    file.add(new FilePageSetupAction()).setAccelerator(
        KeyStroke.getKeyStroke(KeyEvent.VK_P,
            Event.CTRL_MASK | Event.SHIFT_MASK));
    file.addSeparator();
    file.add(new FileQuitAction()).setAccelerator(
        KeyStroke.getKeyStroke(KeyEvent.VK_Q, Event.CTRL_MASK));
    mb.add(file);
    setJMenuBar(mb);
   
    JTextArea t = new JTextArea();
    getContentPane().add(t);

    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
        System.exit(0);
      }
    });
  }

  public class FilePrintAction extends AbstractAction {
    public FilePrintAction() {
        super(\"Print\");
    }
   
    public void actionPerformed(ActionEvent ae) {
      PrinterJob pj = PrinterJob.getPrinterJob();
      ComponentPrintable cp = new ComponentPrintable(getContentPane());
      pj.setPrintable(cp, mPageFormat);
      if (pj.printDialog()) {
        try { pj.print(); }
        catch (PrinterException e) {
          System.out.println(e);
        }
      }
    }
  }

  public class FilePageSetupAction extends AbstractAction {
    public FilePageSetupAction() { super(\"Page setup...\"); }
    public void actionPerformed(ActionEvent ae) {
      PrinterJob pj = PrinterJob.getPrinterJob();
      mPageFormat = pj.pageDialog(mPageFormat);
    }
  }
 
  public class FileQuitAction extends AbstractAction {
    public FileQuitAction() { super(\"Quit\"); }
    public void actionPerformed(ActionEvent ae) {
      System.exit(0);
    }
  }
}
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