当前位置: 首页 > 知识库问答 >
问题:

编辑单元格时刷新行

司徒兴思
2023-03-14

我在这个JTable上有问题。我这样编辑单元格

然后,我按Enter键提交更改。在这里,我希望gui用新的值刷新表。

但它们不显示,只有当我像这样更改选择时它们才显示

这是在TableModel中调用的。

@Override
public void setValueAt( Object inValue, int inRow, int inCol ) {
    ProductRow productRow = (ProductRow)( getRowsData().get(inRow) );

    //more code 
    productRow.setCantidad( inValue.toString() );  // when this is called all properties are updated from ProductRow                 
    fireTableCellUpdated( inRow, inCol );
}

共有1个答案

高溪叠
2023-03-14

如果更改一个特定单元格会更新同一行中的其他单元格(假设这就是您所追求的),那么您在回答中的最后一次尝试使用了正确的方法,只是参数不正确:-)

@Override
public void setValueAt( Object inValue, int inRow, int inCol ) {
    ProductRow productRow = (ProductRow)( getRowsData().get(inRow) );
    // when this is called all properties of productRow are changed.   
    productRow.setCantidad( inValue.toString() ); 
    // note: both parameters are _row_ coordinates
    fireTableRowsUpdated(inRow, inRow); 
}
 类似资料:
  • 我有一个带有单元格编辑的primefaces datatable,它可以在视图中的一个布尔变量上切换。 我有三个问题: 在编辑模式下,我更改了一个值,然后单击页面上的“保存”按钮,它不会保留新值,如果我先单击页面上的任何其他位置,然后单击“保存”,它将保留该值。如果您先单击“保存”,我需要它来保留值。 如果我编辑了一个输入文本的单元格,然后我单击了它,那么该字段现在就是一个输出文本,直到我再次单击

  • 问题内容: 我正在尝试用Java编写程序来管理我的Bookie帐户。我是java的新手,所以我认为我会选择一些简单的方法来了解事情的原理。我决定使用表格视图并使各个单元格可编辑。我一直在关注本教程http://java- buddy.blogspot.co.uk/2012/04/javafx-2-editable-tableview.html 。它详细说明了如何使用Java代码执行此操作,并将其复

  • 问题内容: 我在TableView上有一个事件侦听器,用于侦听键盘事件。 当用户单击Enter或将焦点更改到另一个单元格时,使用新数据更新单元格时出现问题。当您单击输入或更改焦点时,该单元格将变为空。我不知道为什么。如何保存数据并使用新数据更新单元格。 问题答案: 这些变得非常棘手。我认为任何与“行为相关”的东西(即对用户输入做出反应的标准控件)都很难更改,并且JavaFX通常不提供很好的支持。希

  • 我有一个带有单元格编辑功能的数据表,我想通过应用一个不同样式的类来更新数据表以显示修改后的记录。 以下是我的问题: 如果在激发onCellEdit事件时未更新数据表,则记录已正确更新,但无法看到已修改行的applyed style类。 如果在onCellEdit事件激发时更新数据表,并使用return键更新值,则一切正常,并且可以看到修改行的应用样式类。 如果我在单元格编辑事件触发时更新数据表,并

  • 单击未选中的可编辑单元格-单元格被选中 双击单元格(随时),执行自定义打开操作 单击选定单元格触发编辑 我需要编写一个检查选择的自定义IEditableRule吗?如果有一种方法可以检查来自W/I这个规则的选择,或者我是否也需要创建一个可以监听整个表选择并统一这些概念的规则?

  • 问题内容: 我需要在jTable中显示数字,精确到小数点后两位。为此,我创建了一个自定义单元格编辑器,如下所示: 该单元格编辑器非常适合将点用作小数点的英语语言环境。但是在德语语言环境中,它不接受逗号作为小数点的值。请让我知道我的代码中有问题的地方。提前致谢。 编辑:这是我如何使其工作: 问题答案: 使用语言环境来发挥您的优势: