标题解释了这个问题.我怎么能轻松做到这一点?
我试图让表格上的标题有自动换行.我已设法做到这一点,但第一个数据行正在扩展.该表的代码是:
public class GenerateTable extends JTable {
private JCheckBox boxSelect = new JCheckBox();
private JTableHeader hdGen;
public class LineWrapCellRenderer extends JTextArea implements TableCellRenderer {
private static final long serialVersionUID = 1L;
int rowHeight = 0; // current max row height for this scan
@Override
public Component getTableCellRendererComponent(
JTable table,
Object value,
boolean isSelected,
boolean hasFocus,
int row,
int column)
{
/*
* row < 0 means header
*/
if(row >= 0) {
setWrapStyleWord(false);
return this;
}
setText((String) value);
setWrapStyleWord(true);
setLineWrap(true); …Run Code Online (Sandbox Code Playgroud) 我在NetBeans中使用JTable GUI组件.
我想创建多行标题
当我为表头创建自定义渲染器时,我能够这样做
但我不想,因为我喜欢默认的(我在程序中的其他地方使用它).
所以问题是:如何使标题更高?
我的代码:
String headers[] = new String[3];
headers[0] = "Header1";
headers[1] = "Header2";
headers[2] = "<html><center>Long<br>Centered</br></center></html>";
DefaultTableModel dtm = new DefaultTableModel();
dtm.setColumnIdentifiers(headers);
dtm.setRowCount(5);
jTable1.setModel(dtm);
jTable1.getTableHeader().setPreferredSize(
new Dimension(jTable1.getColumnModel().getTotalColumnWidth(),32));
Run Code Online (Sandbox Code Playgroud)