一般情况下,可以使用鼠标拖放JTable中的列,即互换列之间的位置。
如何设置JTable,使它的列不能移动?

解决方案 »

  1.   

    看看是不是这个,我没试过setDragEnabled
    public void setDragEnabled(boolean b)设置 dragEnabled 属性,该属性必须为 true 才能确保启用对此组件的自动拖动处理(拖放操作的第一部分)。需要将 transferHandler 属性设置为非 null 值,以便拖动执行操作。dragEnabled 属性的默认值为 false。 
    当启用自动化拖动处理时,只要用户在选择上按住鼠标按钮,并将鼠标移动几个像素,多数外观就会开始拖放操作。因此,将此属性设置为 true 可以对选择行为产生微妙的影响。 有些外观可能不支持自动拖放;它们将忽略此属性。可以通过修改该组件直接调用 TransferHandler 的 exportAsDrag 方法来解决此类外观。 
    参数:
    b - 设置 dragEnabled 属性的值 
      

  2.   

    应该是这个
    JTableHeader
    setReorderingAllowed
    public void setReorderingAllowed(boolean reorderingAllowed)设置用户是否可以拖动列头,以重新排序各列。 参数:
    reorderingAllowed - 如果表视图应该允许重新排序,则为 true;否则为 false
      

  3.   

    table.getTableHeader().setReorderingAllowed(false);
    这样就ok了
    请LZ及时结贴