问题标签 [tablemodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
12546 浏览

java - 如何使用自定义 TableModel 删除 JTable 中的一行

我一直在阅读与我类似的帖子,并阅读了Java 教程页面,但我似乎无法让它工作。我不确定我是否遗漏了一些基本的东西......

我在下面有一个自定义表格模型,我需要能够从中删除行。该表初始化为空,并通过组合框和添加按钮添加行。还有一个删除按钮,需要将选定的行从表中删除。

我已经通过控制台中的打印确认selectedRow包含正确的行。该fireTableRowsDeleted功能不做任何事情。该行仍然存在。你如何只删除特定的行?

谢谢,

0 投票
2 回答
4528 浏览

java - JTable、TableModel 和 TableColumnModel - 发生了奇怪的事情

我正在为我的一个客户开发一个服装 JTable。

当我开始研究表格模型时,我刚刚完成了列模型。大多数与表模型中的列相关的函数实际上是列模型中函数的别名。

无论如何,发生了一件非常奇怪的事情。我希望有人可以帮助我:

  1. JTable 正确显示该列。这意味着 getColumnCount 和 getColumnName 工作正常。

  2. 行数显示正确。这意味着 getRowCount 工作正常。

  3. 每行的单元格数显示正确,因为表模型中的 «getColumnCount» 返回列模型中 getColumnCount 的值。

现在,奇怪的事情来了:

每行的第一个单元格的值是正确的。但对于同一行中的所有其他单元格,它保持不变。

我假设,就像你们大多数人已经做过的那样,getValueAt 有问题。因此,我决定在表格呈现后对它的调用进行硬编码。猜猜看:这个值是正确的。

经过一些调试,我发现它是调用'getValueAt(rowIndex,0)'而不是'getValueAt(rowIndex,columnIndex)'的JTable。

谁能帮我这个?此致...

表模型

柱模型

还有那个硬编码的测试。2 行,每行 3 个单元格:

0 投票
3 回答
1017 浏览

java - 通过单击 JButton 重新制作 JTable

我有一个 9 x 3(27 个单元格)的 JTable,但是如果用户单击一个按钮,我希望表格发生变化,不仅填充新数据,而且可能填充不同数量的单元格。我不知道该怎么做。

我尝试从父级中删除表并创建表的新实例。没啥事儿。这里:

我想知道我该怎么做

a)从面板中删除一个表格并以不同的形状“放回”或b)更改表格的内容(可能还有形状)。

0 投票
1 回答
704 浏览

java - 带有复选框问题的 JTable - 表未在运行时创建

谁能帮帮我吗。我正在尝试创建一个带有复选框的动态表。数据是从数据库中访问的。但它不是在运行时创建表。它正确地从数据库中检索数据。但我不明白为什么它不在指定的面板(panTable)中创建表。下面是代码:

0 投票
1 回答
2983 浏览

java - 如何清除扩展 AbstractTableModel 的自定义 TableModel

正是问题所述。我创建了一个自定义tableModel类,我想JTableactionPerformed.

0 投票
1 回答
1285 浏览

java - 自定义 TableModel Swing 中的 removeRow() 方法

我有一个使用我创建的自定义 TableModel 填充的 JTable。我有另一个 JTable,可以从第一个 JTable 添加行。我可以将该行添加到新的 JTable 没有问题,但我需要在将其添加到新的 JTable 时从第一个 JTable 中删除该行。不幸的是 removeRow() 只是 DefaultTableModel 的一种方法,我已经检查了源代码,但它没有显示出来......

提前致谢!

这是我的自定义表格模型:

0 投票
3 回答
1561 浏览

java - 为什么 JTables 没有显示添加内容?

我正在将对象从一个 JTable 添加到另一个,并且通过调试可以看到在 CustomTableModel 中对象被添加到对象列表中。只有我添加的第一个对象显示在新的 JTable 中。

所以我可以向 TableModel 添加许多对象,但只有第一个对象显示在 JTable 中。

这是我的添加方法:

如果您想查看我的自定义表格模型,请告诉我......

从 customTableModel 添加和删除方法:

0 投票
1 回答
2722 浏览

java - getDataVector 提供来自 TJable 的各种数据类型

我有一个 JTable,当我使用 jTable1.getModel()).getDataVector() 来自不同列的对象有不同的类型(对于我来说,它们应该都是字符串)

我的表有五列:

  1. 数字(实际上是字符串,但我解析它没有问题)

  2. 从附加到单元格的组合框中选择的字符串,但是当我想从中获取值时,它似乎是向量,而不是字符串

  3. 再次编号(如在 0 列中 - 这里没问题)

  4. 再次带有组合框的字符串,但给了我字符串值,所以没问题

  5. 数字(隐藏在字符串中),但这应该是字符串,但它是向量

我如何在单元格中创建组合框(第 1 列和第 3 列):

我如何创建表模型:

这就是我读取数据的方式:

我在最后一行得到 CastException (nextStep = ...)

我在 (matrix = ...) 线上遇到了同样的异常,但正如你所看到的,我以不同的方式投射它,现在它似乎工作正常。起初我以为问题与单元格中的组合框有关,但它也发生在用户插入简单字符串的列中。

好吧,我可以简单地进行另一个强制转换,但这让我很困扰,因为没有它它应该可以工作(在不同类型的 JTables 中没有这个问题),这使得代码难以阅读,如果想要用更多列扩展这个表(这可能会在不久的将来发生)我将再次为同样的问题而苦苦挣扎。

有谁知道,为什么它会这样工作,是否有任何方法可以强制 jtable(或模型)以统一格式给我单元格的值?

0 投票
2 回答
705 浏览

java - 如何用向量刷新 JTable

我已经被这个困扰了很长一段时间了。我了解您使用表模型用新值刷新实际表,但是我似乎无法让它工作。我在表单中添加了一个 tablemodellistener 并有一个 tableChanged 方法。但是,我似乎无法弄清楚为什么当我插入表时没有调用 tableChanged 方法。

如果我单击表单上的刷新按钮,我可以完全重建表格吗?那有可能吗?如果不是,我是否必须从刷新按钮的操作执行方法中调用我的 tableChanged 方法才能触发它?我已经坚持了很长一段时间了,我只是想弄清楚这一点,以利于学习。

0 投票
2 回答
1835 浏览

java - AbstractTableModel setValueAt 未在 Jbutton 单击时触发

我有一个扩展 AbstractTableModel 的自定义 TableModel。

当您在可编辑单元格中键入新值然后移动到另一个单元格时,我编写的 setValueAt 函数会适当地触发。我遇到的问题是,对于最后一个可编辑单元格,用户将立即单击 JButton 继续。这不会触发 setValueAt 函数,因此不会保存数据。当用户在编辑单元格后立即点击按钮时,是否有一种好方法可以确保始终存储此值?如果需要,请参考下面的 setValueAt 函数。

感谢您的任何帮助,您可以提供。