【问题标题】:BeansBinding in JTable and JTable's TableColumnJTable和JTable的TableColumn中的BeansBinding
【发布时间】:2023-11-10 06:38:02
【问题描述】:

我的一个 JTable 使用 bean 属性(util.List)进行了更新。没关系。但我想在我的 JTable 中有一个名为“Action”的列。该列的每一行都应该有JComboBox,以便为该行的数据做一些事情。我阅读了this,它有一些教程如何将 Jcombobox 设置为 JTable 行。

我使用 NetBeans IDE 进行编码。在netbeans的“表格内容”的JTable显示框的Column选项卡下,有属性可以设置我们的JTable。 我为我的“操作”添加了一个列,然后在“编辑器”选项中将javax.swing.table.TableCellEditor 设置为new DefaultCellEditor(comboBox)。在这里,我为单元格编辑器添加了一个 JComboBox 组合框。但是当我运行项目时,没有任何组合框,只有一个文本“对象”。(我使用Object作为列的表达式类型)

有人告诉我,当 JTable 绑定到 beans 属性时,我如何将 JCombobox 插入 JTable 单元格 . 特别是在 NetBeans 中

【问题讨论】:

  • 我不建议过度使用 NetBeans,因为您最终会完全不理解它为您生成的所有代码。如果您在这个问题上需要一些帮助,您必须提供示例代码(摘自 NetBeans 生成的内容,但请不要全部发布,因为 NetBeans 生成的代码非常长且难以理解!)。跨度>
  • 正如另一个线程中已经提到的:你不能添加一个带有beanbinding的动作,没办法。 appframework 中有一个 Action 注释 - 但它与 beansbinding 无关(实际上根本没有任何关系)。
  • 这是我在之前的评论中提到的另一个话题*.com/questions/7555377/…
  • 我阅读了您之前的文章。(谢谢)。我的意思是“动作”不是在 beansbinding 中添加动作。而是在要添加到表格单元格中的 JComboox 中。

标签: java swing desktop-application beans-binding


【解决方案1】:

您忘记为此设置DefaultCellEditor

【讨论】:

  • 那我放了什么?我如何设置JCombobox
  • @Aash Maharoon 在此处sscce.org 发帖(编辑您的帖子),或遵循我发布的链接中的代码示例
  • 我已经在我的问题中提到了该链接。它没有答案。这里不是关于插入 JCombobox 的全部内容,而是如何使用 Beansbinding 插入 JCombobox。
  • JTable 是由 NetBeans 自动生成的。
  • 有一个相关的例子here
最近更新 更多