首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TableModel与CellRenderer的值差

TableModel与CellRenderer的值差
EN

Stack Overflow用户
提问于 2013-01-28 02:13:14
回答 1查看 214关注 0票数 0

我创建了ColumnAutofitTable扩展JTable,并参考了http://tips4java.wordpress.com/2008/11/10/table-column-adjuster/

然而,它有时表现出奇怪的行为,如附图所示。

通过编写一些日志,我发现当列宽被错误地展开时,TableModel中的值和CellRenderer中的值是不同的,这在正常情况下是相同的。

正常情况下,TableModel值与CellRenderer文本相同。

行== 0,列== 1,旧宽度== 0,新宽度== 78,值== 00d 01:52:07,渲染器== -74,-15,0x0,无效,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1dd085d,flags=25165832,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,horizontalAlignment=LEADING,horizontalAlignment=LEADING,en19#,00d 01:52:07,,

奇怪的情况,有错误的CellRenderer文本值

行== 465,列== 1,旧宽度== 78,新宽度== 333,值== 00d 00:20:23,渲染器== ==无效,alignmentX=0.0,alignmentY=0.0,== flags=25165832,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,horizontalAlignment=LEADING,defaultIcon=,defaultIcon=,en23 19#,,en21#卡车司机:null,,

我没有向表中添加任何自定义的单元格呈现器。我使用setDataVector()将数据添加到表中,以防止对每一行进行调整大小。

我的主要问题是:

1)为什么会发生这种情况?它是JTable或CellRenderer的bug吗?

2)在不修改核心java模块的情况下,如何避免这种情况?

EN

回答 1

Stack Overflow用户

发布于 2013-01-28 02:30:57

呈现器是一个共享资源,很可能您正在看到呈现器使用的最后一个值/单元格,它可能不是要报告的单元格。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14554540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档