我创建了一个"FileTree“类,它通过JTree显示文件系统,并且只显示文件夹和".xlsx”或".xls“文件。如果它们是".xlsx“或".xls”文件,我希望能够向DefaultMutableTreeNodes添加双击操作。似乎不可能将ActionListener或MouseListener添加到DefaultMutableTreeNode中,有没有方法可以控制这些节点上的双击操作?
发布于 2012-12-03 00:10:12
我有一个各种各样的解决方案,它不是我正在寻找的,但它确实有效。
我已经向JTree添加了一个MouseListener,然后当点击计数为2时,我检查事件源是否为JTree的实例,然后调用
Object comp = tree.getLastSelectedPathComponent();
if (comp instanceof FileTreeNode)
{
FileTreeNode ftn = (FileTreeNode) comp;
File file = ftn.getFile();
}然后我可以对文件做任何我想做的事情。FileTreeNode是DefaultMutableTreeNode的扩展,它包含该节点上的文件。
https://stackoverflow.com/questions/13670352
复制相似问题