java - JTable 中 ComboBox 的选择监听器

标签 java swing jtable jcombobox tablecelleditor

下面是我的 table 的图片。 UnitDescription 列具有 ComboBox 编辑器。我为 Description 列添加了一个项目监听器,当我选择不同的项目时,Unit 列的项目也会更改。

我的问题是,在某些情况下,对于表的其他行,它会有不同的描述。与前一行相比,该行的 Unit 列也将具有不同的项目。

当 B 列的 ComboBox 发生更改(仅针对该行)时,如何填充 A 列的 ComboBox

enter image description here

最佳答案

首先查看 Concepts: Editors and RenderersUsing Other Editors

一般的答案是,你需要两个编辑器,当TableCellEditor#getTableCellEditorComponent时被调用时,您将使用 JTable 引用和 row/column 属性来查找列 B 的当前值code> 并更新通过该方法返回的编辑器的值

现在,如果您想根据 B 列的更改来更改 A 列的值,则需要查看 TableModel#setValueAt 方法,当任何单元格的值发生更改时都会调用该方法,并根据 B

的当前值修改 A

关于java - JTable 中 ComboBox 的选择监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34835855/

相关文章:

java - 从一致性服务器返回 null

java - 什么等同于 Java World 中的 PHP Zend Framework

java - Avro:ReflectDatumWriter 不输出架构信息

java - Java 自定义注释有哪些合适的用途?

java - swing 中的线程并不总是运行

java - 取消选择 JTable 的行

java - 未显示 jtable 标题

java - JList 未在单独的 Pane 上更新(Swing、Java)

Java:JTable 中的控制台输出

java - 影响 JTable 单元格值在文本文件上的更改