尝试创建一个将 n 输入到表中的系统。但是,n 很长,放不下桌子。
尝试使用 TableCellRenderer 但它仅文本换行一个单元格,而我正在尝试文本换行 5 个单元格。
这是我尝试使用的解决方案的链接 如何在 JTable 行内自动换行
我对编码有点陌生,非常感谢您的帮助。
TableCellRenderer 的代码
static class WordWrapCellRenderer extends JTextArea implements TableCellRenderer {
WordWrapCellRenderer() {
setLineWrap(true);
setWrapStyleWord(true);
}
public Component getTableCellRendererComponent(JTable ncpTbl_1, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
setText(value.toString());
setFont(new Font("Arial", Font.PLAIN, 17));
setSize(ncpTbl_1.getColumnModel().getColumn(column).getWidth(), getPreferredSize().height);
if (ncpTbl_1.getRowHeight(row) != getPreferredSize().height) {
ncpTbl_1.setRowHeight(row, getPreferredSize().height);
}
return this;
}
}
我用来调用 TableCellRenderer 的代码
ncpTbl_1.getColumnModel().getColumn(0).setCellRenderer(new WordWrapCellRenderer());
ncpTbl_1.getColumnModel().getColumn(1).setCellRenderer(new WordWrapCellRenderer());
ncpTbl_1.getColumnModel().getColumn(2).setCellRenderer(new WordWrapCellRenderer());