[英]jtable header hiding/without column
例如,我想创建一个表,该表具有3列标题,但仅显示两列并隐藏第3列。
最后一列是固定的,像大多数应用程序一样,通过单击并显示弹出菜单来隐藏/显示列。
干杯
可能我没有描述清楚。 我知道removeColumn / addColumn。 通过单击表标题,我可以添加列或删除它们。 但是我很好奇的是,在表标题的最右角有一个专用的列标题,该标题是固定的,较小的宽度并带有描述性的类似表格的图标。 因此,通过鼠标左键单击该列标题,将显示一个用于隐藏/显示列的弹出菜单。此列标题实际上没有列或行,但标题类似于JDownloader。
您已经看过JTable方法
这两种方法仅用于隐藏/显示JTables Column(s)
,但TableModel
数据仍然可用
SwingX
的JXTable
具有内置的UI,用于在弹出窗口中显示/隐藏列(不幸的是,我找不到它的图像)。
当然,您可以使用建议的方法自己创建,但是为什么要重新发明轮子呢?
有两种方法可以完成此操作:
正确方法:
从表格中删除该列
TableColumn lastColumn = table.getColumnModel().getColumn(lastIndex);
table.removeColumn(lastColumn);
不要这样做:
将最后一列的宽度设置为0:
table.getColumnModel().getColumn(lastIndex).setPrefferedWidth(0);
table.getColumnModel().getColumn(lastIndex).setMaximumWidth(0);
table.getColumnModel().getColumn(lastIndex).setMinimumWidth(0);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.