java - JTable如何在同一列中渲染不同的swing对象

标签 java swing jtable tablecellrenderer tablemodel

我想在同一个 JTable 列中渲染不同的 swing 组件。例如,我想在同一列中有几个不同的组合框、jlabels 和 jcheckboxes。 http://docs.oracle.com/javase/tutorial/uiswing/components/table.html提供了如何每列仅呈现一种类型的组合框的信息,但这还不够。

如何设置表格单元格渲染器以实现此功能?

最佳答案

如果您需要在同一列中使用不同的编辑器/渲染器,可以按照此answer中描述的方法进行操作。并根据单元格(列和行交集)覆盖JTable#getCellEditor()。如果需要,也可以覆盖 JTable#getCellRenderer()

Concepts: Editors and Renderers描述了获取渲染器/编辑器的策略,并附有表格,以便您可以利用它来解决您的问题。

关于java - JTable如何在同一列中渲染不同的swing对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26736735/

相关文章:

java - 将自定义 jtable 模型表类作为参数传递

java - 我们如何使用 Hibernate 和 JPA 调用存储过程?

java - 文本输入未显示在 JTable 中

Java Swing : System-wide components scale?

java - 单击按钮以相同的形式打开文本 Pane

java - 为 JToolBar 添加 MouseListeners(事件被消耗?)

java - 如何禁用结果集中显示的 Jtable 的单元格编辑

java - 如何从 JTable 中获取鼠标选择的行

java - Java 中的 getConstructor 抛出 NoSuchMethodException

java - 如何测试 ArrayList<String> 中的某个项目是否位于某个位置