【发布时间】:2012-06-13 09:26:43
【问题描述】:
我有一个可以删除组件的 JTable。其中一些组件只能作为表中的插入项删除(因此不能放在已经存在的单元格上)。
我的问题是如何禁止在这些组件上放置单元格。我试过类似的东西:
JTable table = new JTable();
table.setDropMode(DropMode.ON_OR_INSERT_COLS);
table.setTransferHandler(new ExampleTransferHandler());
boolean onlyColumnInsert = true;
private class ExampleTransferHandler extends TransferHandler{
public boolean canImport(TransferSupport support){
if(onlyColumnInsert){
return table.getDropLocation().isInsertColumn();
}else{
return true;
}
}
}
但这不起作用,因为 isInsertColumn() 仅在删除完成后设置。有没有其他方法可以通过 TransferHandler 中的 canImport() 方法检测 drop 是否会导致插入列?
谢谢!
【问题讨论】:
-
请出示证明问题的 SSCCE。
标签: java swing drag-and-drop jtable