현재 테이블을 인쇄 할 때이 기능을 사용하고 있습니다. 하지만 메시지 서식의 레이아웃에별로 만족스럽지 않습니다. 바닥 글에 pagenumber와 날짜가 모두 있고 테이블의 왼쪽에 날짜 서식이 정렬되어 있고 오른쪽에 페이지가 있습니다.JTable 인쇄시 메시지 서식 맞추기
어떻게하면됩니까? PrintTable 메서드를 재정의하는 것에 대해 읽은 적이 있지만 읽은 것으로부터 꽤 복잡해 보입니다.
희망 사항을 보내 주시면 감사하겠습니다. :)
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
import javax.print.attribute.standard.OrientationRequested;
import javax.swing.JTable;
import dk.beesys.rims.ui.WindowInventory;
public class Print {
private static Print INSTANCE;
public static Print getInstance() {
if (INSTANCE == null) {
INSTANCE = new Print();
}
return INSTANCE;
}
private Print(){ }
public void printList(java.awt.event.ActionEvent ignore) {
String strDate = MessageFormat.format("{0,date,short} {0,time,short}", new Date());
MessageFormat header = new MessageFormat("- {0} -");
MessageFormat footer = new MessageFormat("Printed: " + strDate);
PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
aset.add(OrientationRequested.LANDSCAPE);
try {
WindowInventory.getInstance().getTable().print(JTable.PrintMode.FIT_WIDTH, header, footer, true, aset, true);
} catch (java.awt.print.PrinterException e) {
System.err.format("Cannot print %s%n", e.getMessage());
}
}
행운을 잃지 않고 작동하도록 노력했습니다. 위의 CustomTablePrintable 예제보다 쉽게 구현할 수있는 코드 예제가있는 사람이 있습니까? – DanielFH