【问题标题】:JComboBox in specific JTable cell特定 JTable 单元格中的 JComboBox
【发布时间】:2012-03-05 03:51:18
【问题描述】:

我遇到了一个让我发疯的问题。

我有一个经典的 JTable,有几列。我需要一个特定的列,而不是其单元格中的简单文本值,它必须包含一个 ComboBox。我搜索了很多,我发现的只是在列的每个单元格中实现相同 JComboBox 的示例,这不是我需要的:我需要列的每个单元格都有一个具有不同值的组合框。

谁能给我一些实际操作的例子吗?

谢谢。

PS:我正在使用 NetBeans。

【问题讨论】:

  • 见:stackoverflow.com/questions/4211452/… 的一种方式。
  • 您可以添加一个示例来说明您希望使您的请求更清晰吗?
  • 上面的例子展示了一种使用 ArrayList 的方法。如果您需要更动态的东西,那么您可能需要使用 Hashmap 来代替。然后,您可以将行号映射到组合框模型。当您动态添加行时,您也会动态更新哈希映射。

标签: java swing jtable jcombobox


【解决方案1】:

TableCellEditor.getTableCellEditorComponent() 方法将一行作为参数。以现有示例为指导,并使用此方法的 row 参数来决定组合框必须提出哪些值。

【讨论】:

  • 您好 JB Nizet,感谢您的快速回复。我试着做一些实验,这是我目前所得到的:[链接]pastebin.com/vTfzAS5x当然它不起作用,我有两个错误。一种说法是 GetTableCellEditorComponent 不能在静态上下文中被引用(但它不是!!),另一种说法是“找不到符号 setCellEditor(javax.swing.DefaultCellEditor”。拜托,你能帮我解决这个问题吗?会是非常感谢。
  • @aur0n: TableComboBoxByRow 就是一个例子。
  • 谢谢垃圾神,这很有用。我设法让它工作,但我有两个问题:我尝试使用特定组合框动态添加更多行,但它不适用于新添加的行?我用不同的方法尝试了几次。 ;-( 建议?
  • @aur0n,如果您不关注所有的 cmets/answers,为什么还要提问?我在此答案中的链接前 8 小时提供了该代码的链接。
  • 对不起@camickr,这是我第一次在stackoverflow上发帖,所以我有点迷失方向。我深感抱歉。回到问题,仍然没有解决。有没有办法用你的代码动态添加带有特定组合框的新行?
猜你喜欢
  • 2021-06-20
  • 2011-03-16
  • 2015-03-07
  • 1970-01-01
  • 2016-07-01
  • 2018-12-02
  • 1970-01-01
  • 2020-01-02
  • 2011-09-17
相关资源
最近更新 更多