0
我遇到問題。當我點擊我的按鈕後,將jTable添加到PDF中,保存後,表格消失,當我清除它時,表格變得更大並破壞用戶界面。 MainTable1是我的用戶界面上存在的表。表格在我將其寫入PDF後重置表格
下面的代碼:
String path = "";
JFileChooser fileChooser = new JFileChooser();
fileChooser.setCurrentDirectory(new File(System.getProperty("user.home")));
int result = fileChooser.showOpenDialog(this);
if (result == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
path = selectedFile.getAbsolutePath();
getContentPane().setLayout(new BorderLayout());
JTable table = mainTable1;
JPanel tPanel = new JPanel(new BorderLayout());
tPanel.add(table.getTableHeader(), BorderLayout.NORTH);
tPanel.add(table, BorderLayout.CENTER);
getContentPane().add(tPanel, BorderLayout.CENTER);
com.itextpdf.text.Document document = new com.itextpdf.text.Document();
PdfWriter writer;
try {
writer = PdfWriter.getInstance(document, new FileOutputStream(path));
document.open();
PdfContentByte cb = writer.getDirectContent();
PdfTemplate tp = cb.createTemplate(500, 500);
Graphics2D g2;
g2 = tp.createGraphicsShapes(500, 500);
table.print(g2);
g2.dispose();
cb.addTemplate(tp, 30, 300);
document.close();
tableToPDFButton.setEnabled(false);
} catch (FileNotFoundException | DocumentException ex) {
Logger.getLogger(HealthApplicationUI.class.getName()).log(Level.SEVERE, null, ex);
}
}