Java 制作一个可滚动的ColumnControl弹出窗口JXTable

Java 制作一个可滚动的ColumnControl弹出窗口JXTable,java,swingx,jxtable,Java,Swingx,Jxtable,晚安。我对JXtable的属性有一个有趣的问题 问题是我创建的JXTable列太多,所以我决定让用户使用SwingX库中JXTable默认附带的ColumnControlButton选择要显示的列 由于我有太多的列,当我按下ColumnControl按钮时,它不会显示所有可以隐藏/显示的列。默认的ColumnControl没有用于管理这种情况的可滚动属性。我需要一些类似于与JXTable一起使用的代码。。我不知道,可能类似于.setHorizontalScrollEnabled(true),因此

晚安。我对
JXtable
的属性有一个有趣的问题

问题是我创建的
JXTable
列太多,所以我决定让用户使用SwingX库中
JXTable
默认附带的
ColumnControlButton
选择要显示的列

由于我有太多的列,当我按下
ColumnControl
按钮时,它不会显示所有可以隐藏/显示的列。默认的
ColumnControl
没有用于管理这种情况的可滚动属性。我需要一些类似于与
JXTable
一起使用的代码。。我不知道,可能类似于
.setHorizontalScrollEnabled(true)
,因此我可以看到
ColumnControl
中的所有列

我提前感谢你们的回答,伙计们

顺便说一下,下面是加载表的代码:

public static void load_resg() throws Exception{

     String[] titles = new String[80];     

     for(int i=0; i<80; i++){
         titles[i]=NbP[i];
     }

      modelResg=new DefaultTableModel(null, titles){

          @Override
             public boolean isCellEditable(int i, int i1) {
               return false; //To change body of generated methods, choose Tools | Templates.
             }
        };

      BufferedReader bw = new BufferedReader(new FileReader("Out\\Depth.txt"));
      String line; 

      while((line=bw.readLine())!=null){
          modelResg.addRow(line.split(";"));
      }

    bw.close();
    resg.setIntercellSpacing(new Dimension(5, 5));
    resg.setHighlighters(HighlighterFactory.createSimpleStriping());
    resg.setHorizontalScrollEnabled(true);
    resg.packSelected();
    resg.setSortable(true);
    resg.getColumnControl();
    resg.setColumnControlVisible(true);
    resg.setModel(modelResg);

}
public static void load\u resg()引发异常{
字符串[]标题=新字符串[80];

对于(int i=0;i您应该能够使用设计用于
JTable
的。它将显示包含
JCheckBoxMenuItem
的所有列的菜单,以便您可以选择要显示的列

但是它没有在弹出窗口中添加垂直滚动条,因此它不允许我查看所有列

当您有那么多菜单项时,您可能需要使用。这将允许您控制一次显示多少菜单项,然后添加向上/向下按钮以滚动浏览其余菜单项

TableColumnManager
class I的
showPopup(…)
方法中添加了以下代码行:

MenuScroller.setScrollerFor(popup, 10);
popup.show(header, r.x, r.height);

一次显示10个菜单项。将鼠标悬停在箭头上会导致菜单滚动。

不知道它是否适用于JXTable,但您可以查看设计用于JTable的菜单项。它适用于JXTable,但不会在弹出窗口中添加垂直滚动条,因此不会让我看到所有列。谢谢不管怎样,这都是你的回答。