Java Jtable,设置同一列的单元格内容不同

假设我的Jtable有两列,两列的编辑器都是下拉选项,我想要同一行第二列的值跟着第一列变化,具体来说:同一行里,第一列选字母,第二列只能选a、b、c,如果第一列选了数字,... 假设我的Jtable有两列,两列的编辑器都是下拉选项,我想要同一行第二列的值跟着第一列变化,具体来说:同一行里,第一列选字母,第二列只能选a、b、c,如果第一列选了数字,第二列只能选1、2、3,不知道这样可不可以实现,在线等,求大神帮帮忙~~先谢过了! 展开
 我来答
jamxval
推荐于2016-01-07 · TA获得超过6821个赞
知道大有可为答主
回答量:4308
采纳率:82%
帮助的人:1405万
展开全部

没有问题。


那 JTable cell editor 的方法

Component getTableCellEditorComponent(JTable table, Object value,
  boolean isSelected,
  int row, int column);


 中返回这个 editor component 时设定它的下拉选项,如果你打算两个列共用同一个 editor component 的话,应该确保这个方法被调用时你重置它的下拉列表,(对象实例可以依然是同一个但它对应的下拉列表选项需要改过来,下次回到第一列时双改回第一列的下拉选项列表)。


你已经看到了这个方法已经传递了将要处理的单元格的坐标 row 行 column 列和它的当前值  value,你可以通过列号知道它应该出现的下拉选项是什么,同时如果值已经在当前下拉列表中时设置当前 comboBox.setSelectedValue(value),这主要是用来从其它行的同一列移动焦点过来时要这要这样做。

追问
谢谢。我不是很理解您的意思,Java菜鸟一枚,若您有时间的的话,能不能麻烦您写个小例子~
追答
可以先在百度搜索:

这个文章讲了 JTable 大致是怎么处理单元格的显示与编辑的:
http://zhidao.baidu.com/question/560253416394348244.html

这个文章讲了在一个单元格怎么使用定制的编辑方式:

http://zhidao.baidu.com/question/390836961865222445.html

这个文章演示了一个完整的常见表格的操作:
https://docs.oracle.com/javase/tutorial/uiswing/components/table.html#combobox
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式