Java JTable:如何在运行时选择列

Java JTable:如何在运行时选择列,java,swing,jtable,Java,Swing,Jtable,我在一个表中有太多的列,无法一次显示它们,并且希望让用户更改哪些列是可见的。我该怎么做 注意:让应用程序在运行时选择列很容易。我要问的是要添加什么UI元素,以允许用户在运行时隐藏/取消隐藏列。没有标准的方法,但是您可以这样做: 使用自定义表格标题呈现组件在列标题上安装其他操作/UI(例如,通过复选框的上下文菜单) 添加自定义模型,根据用户通过列标题上的其他操作选择的项目,可以重新配置该模型以显示不同的项目 执行事件布线/管道 或者:查找执行此操作的自定义组件。可能已经有了一些东西:像JIDE的组

我在一个表中有太多的列,无法一次显示它们,并且希望让用户更改哪些列是可见的。我该怎么做


注意:让应用程序在运行时选择列很容易。我要问的是要添加什么UI元素,以允许用户在运行时隐藏/取消隐藏列。

没有标准的方法,但是您可以这样做:

  • 使用自定义表格标题呈现组件在列标题上安装其他操作/UI(例如,通过复选框的上下文菜单)
  • 添加自定义模型,根据用户通过列标题上的其他操作选择的项目,可以重新配置该模型以显示不同的项目
  • 执行事件布线/管道

  • 或者:查找执行此操作的自定义组件。可能已经有了一些东西:像JIDE的组件库这样的项目将是一个很好的查看位置。

    允许用户右键单击表格标题来控制哪些列是可见的。

    如果您可以导入一些外部库,您可以查看 支持此类运行时修改。

    使用TableModel.addColumn(TableColumn)和TableModel.removeColumn(TableColumn)方法动态显示/隐藏列


    您可以将该调用附加到任何其他GUI组件(例如,使用几个复选框创建一个JPanel或一个JTable)。

    当用户右键单击标题时,显示一个带有可能列的弹出菜单,或者实现一个带有复选框列表的小(且轻)弹出对话框,用于选择可见列。可以通过右键单击、单击工具栏按钮或从工具栏菜单打开对话框。

    谢谢,但这不是我的问题。这是允许用户启动流程的GUI。在答案中添加了第二句。现在更清楚了吗?好:)。当我想找到一个树表的实现时,我发现这个库很有用,而这个库工作得很好:)