我正在创建一个将文件从xml转换为pptx的应用程序。用户将项目从JTree拖动到JList以创建幻灯片。我已经设法让一切正常,但JList似乎在掉线后消失了。我知道因为print语句而收到drop,并且它不是null。我相信JList仍在那里,因为我可以打印数组中的项目。通过测试,我认为我创建的自定义DefaultListModel出了问题。由于某种原因,它不会在删除后调用update / redraw / revalidate,或者已经释放了它的动作侦听器,因为我注意到在删除后getSize和getElementAt方法停止被调用。但是,如果我在app init上向ListModel添加项目,它会正确绘制。
我一直在浏览ListModels和TransferHandlers上的所有文档,但是在删除后无法显示List。我的模型是否缺少覆盖或不以某种方式处理侦听器?
完整来源: http://code.google.com/p/app4args/
重新创建:
由于
答案 0 :(得分:0)
原来我在CustomListModel中重写了与更新如何绘制列表内容相关的方法。我删除了这些并重写了一些东西,它现在正在绘制。