【问题标题】:Only one row editable on JTableJTable 上只有一行可编辑
【发布时间】:2009-06-25 04:12:46
【问题描述】:

我正在尝试制作一种特殊的 jtable。我希望整个表格默认是不可编辑的。但是当用户单击一行,然后单击“编辑”按钮时,该特定行是可编辑的。一旦他们取消该行,它就不再可编辑。

我该怎么做呢?

【问题讨论】:

  • 你需要了解从处理按钮动作到设置表格可编辑的整个过程吗?
  • 为什么不简单地让每一行都可编辑。也许您只希望第二列可编辑?与使用单独的编辑按钮相比,立即单击和编辑有何不同?
  • 我只希望一行可以编辑,以避免人们意外更改他们无意更改的行。通过单击一行并单击编辑,这意味着他们绝对意味着编辑该行。覆盖 isCellEditable 我知道我应该怎么做,谢谢。

标签: java jtable customization


【解决方案1】:

要控制哪些单元格是可编辑的,您需要扩展 JTable 或 JTableModel(请参阅下面示例中对模型的调用)以确保 JTable 中的此方法对行中的所有单元格返回 true您希望根据您的规范进行编辑。

  public boolean isCellEditable(int row, int column) {
      return getModel().isCellEditable(row, convertColumnIndexToModel(column));
  }

还可以查看this tutorial 以了解 TableCellEditors

【讨论】:

    猜你喜欢
    • 2014-01-21
    • 1970-01-01
    • 1970-01-01
    • 2015-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-10
    • 2015-03-17
    相关资源
    最近更新 更多