您回答的关于在JTable中增加复选框的问题,在自定义的类MyTable中有三个方法我看不明白。

publicStringgetColumnName(intcolumn)publicClassgetColumnClass(intcolumnIndex)publicbo... public String getColumnName(int column)
public Class getColumnClass(int columnIndex)
public boolean isCellEditable(int rowIndex, int columnIndex)
以上者三个方法没有被显式调用,我测试过了,任何一个都是不可或缺的。请问您知道其中的原理吗?谢谢!
展开
 我来答
Irreproducible
2012-02-25 · TA获得超过451个赞
知道小有建树答主
回答量:305
采纳率:100%
帮助的人:458万
展开全部
自定义的类是实现TableModel接口的,这三个方法是TableModel接口定义的,它们没有在你的代码中显示调用,却在JTable的功能执行中被调用

根据隐约的记忆,JTable对由TableModel返回的ColumnClass有一些特殊处理,比如boolean值的话就是以CheckBox的形式来展示,但是TableModel必须明确告诉JTable某一列是Boolean.class才能达到这个效果

如果只是为了增加复选框,我认为getColumnClass的重载就够了。如果你的代码是直接实现TableModel接口,自然你需要实现全部方法

具体的解释可以参考core java 第二卷关于高级swing的介绍
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式