java - 被 JTable addRow 弄糊涂了
问题描述
关于添加行JTable
,我发现这个问题的有用答案如何在 JTable 中添加行?.
我对这段代码有点困惑:
DefaultTableModel model = (DefaultTableModel) jtable.getModel();
model.addRow(new Object[]{"Column 1", "Column 2", "Column 3"});
JTable
已经设置了表格模型。我在第一行代码中的理解是,它将DefaultTableModel model
(let call newmodel
)分配给model
from 表,并且这newmodel
不会附加到表中(因为它没有设置为 table using setModel()
)。
那么addRow
这个newmodel
插入新行执行的方法如何Jtable
呢?
解决方案
因为 nowmodel
指的是已经链接到表的模型,您通过(DefaultTableModel) jtable.getModel()
. 它已经存在,您不需要显式地为表分配一个(如果您遵循链接问题所说的内容,您可以在构造函数中完成它)。
您不是在替换它,而是在对现有的进行操作。而且您无需将其重新设置到表格中,因为您永远不会取消设置它。您只是在处理模型本身。
推荐阅读
- javascript - 对本机内联与文件结尾做出反应 - 导出默认值 - 在使用 firebase 时
- python - docker image build 在 Flask 应用程序中运行 pip install -r requirements.txt 失败
- sql - 如何使用 SQL 从文件夹表中仅选择顶级文件夹
- javascript - 将 PDF 转换为 PDF/A 足以禁用文件中的 javascript?
- python - 如何转换哈希图以将列值嵌入到每个第 n 行
- javascript - 在闪亮的应用程序中,HTML/Javascript 加载新页面而不是出现在应用程序中
- swift - Swift UICollectionView 单元格未拉伸
- mysql - 如何将解码的base64列的每个键值对提取到单独的列中
- javascript - 在选项标签中隐藏特定值
- c - 数组大小超出范围