Hi,
lange habe ich nach einer komfortablen Lösung gesucht um mehrspaltigen Text in Java auszugeben. Jetzt habe ich endlich einen Weg gefunden:
Die entscheidende Zeile ist table.setBounds(...), dadurch wird der JTable gerendert.
So kann man ganz einfach Text ausdrucken, ohne daß der JTable einem JFrame übergeben wurde. Da JTable Html unterstützt kann man so auch einfach HTML ausdrucken.
HTH
Viele Grüße
foobar
lange habe ich nach einer komfortablen Lösung gesucht um mehrspaltigen Text in Java auszugeben. Jetzt habe ich endlich einen Weg gefunden:
Code:
List v = new ArrayList();
v.add(new Employee("aaa","bbb"));
v.add(new Employee("ccc","ddd"));
JTable table = new JTable(new MyEmployeeTableModel(v));
table.setBounds(0, 0, 300, 300);
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(table.getPrintable(PrintMode.FIT_WIDTH, null,null));
if (job.printDialog())
{
try
{
job.print();
}
catch (PrinterException e)
{
e.printStackTrace();
}
}
So kann man ganz einfach Text ausdrucken, ohne daß der JTable einem JFrame übergeben wurde. Da JTable Html unterstützt kann man so auch einfach HTML ausdrucken.
HTH
Viele Grüße
foobar