Drukowanie ramki JFrame i jej komponentów

Pracowałem w dużym programie i jedną z jego funkcji powinno być drukowanie zawartości głównego okna. Sprawdziłem API i znalazłem ten przykład:

http://docs.oracle.com/javase/tutorial/2d/printing/gui.html

było to bardzo pomocne, próbowałem użyć tego kodu w moim programie, umieszczając go w metodzie działania przycisku drukowania:

PrinterJob job = PrinterJob.getPrinterJob();
     job.setPrintable(this);
     boolean ok = job.printDialog();
     if (ok) {
         try {

             job.print();
         } catch (PrinterException ex) {
          /* The job did not successfully complete */
         }
     }

Jeśli kliknę przycisk drukowania, otrzymam okno dialogowe drukarki, a kiedy mówię, że ma drukować, po prostu drukuje pusty dokument. Wiem, że powyższy kod nie jest wszystkim, czego potrzebuję, jak widziałem w przykładach API, jest metoda print (), ale najwyraźniej nigdy jej nie wywołują, więc jest dość myląca. Próbowałem dzwonić i używać go wiele razy, ale bez powodzenia.

Ponadto myślę, że kiedy w końcu uda mi się go wydrukować, moje okno będzie musiało zostać wydrukowane w orientacji poziomej, może nawet wymagać skalowania. Masz jakieś pomysły, jak to zrobić?

Chciałbym, aby każda użyteczna pomoc pomogła mi skutecznie wdrożyć ten kod. Wiem, że powinienem być w stanie zrobić to sam, sprawdzając dokumentację (próbowałem już prawie 2 dni), ale nie mogę go uruchomić. Nauczyłem się wszystkich programów, które znam przez Internet. Każda pomoc zostanie bardzo doceniona.

questionAnswers(2)

yourAnswerToTheQuestion