我需要表格能够自动出现滚动条,以便表格的行、列太长或太宽时也能显示其中的内容,于是我设置表格的ResizeMode,如下:
jTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);但是此时运行程序,默认的表格的列宽度是固定的,大概只有20几个象素。请问当表格的ResizeMode为AUTO_RESIZE_OFF时,如何设定特定列的宽度???

解决方案 »

  1.   

    TableColumnModel tcm = table.getColumnModel();
    tcm.getColumn(int columnIndex).setPreferredWidth(int preferredWidth);
      

  2.   

    简便起见,只贴能表明问题的代码,MyDefaultTableModel是一个继承了DefaultTableModel的类,这里可是视为DefaultTableModelJTable jTableNote = new JTable();
    MyDefaultTableModel noteTableModel = businessMain.initializeNoteTableModel();
    //初始化表格模型jTableNote.setModel(noteTableModel);jTableNote.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);就这么多了,AutoResizeMode不设置为AUTO_RESIZE_OFF时,列宽是可以设置的,也可以象你说的那样设置;可是只要设置为AUTO_RESIZE_OFF,我就不知道怎么设置列宽了。可是我必须将它设置为AUTO_RESIZE_OFF,因为需要表格能够自动伸缩。