我有这个问题要解决你有一个JPanel
并且JLabel
你必须JLabel
通过拖放克隆并在放置的位置创建一个JLabel
克隆。我想问的第一件事是是否可以在匿名类中实现接口,比如监听器,所以我不必编写自己的扩展和实现的类。我知道如何通过传输“文本”属性来拖放到,但我不知道如何将一个克隆到.JPanel
JLabel
Cloneable
JLabel
JLabel
Cloneable
JLabel
JTextField
JLabel
JPanel
问问题
431 次
1 回答
1
在这种情况下,实现Cloneable
接口不太可能实现任何有益效果。在Effective Java, Second Edition中,作者在第 11 条:明智地覆盖克隆中概述了克隆对象的变幻莫测。
拖放传输数据,而不是容器。因为String
是不可变的,所以根本没有理由克隆 aString
。对于可变数据,复制构造函数或工厂方法更有意义。
因为JLabel
不是用户可编辑的,它可能是 DnD 的意外目标,尽管它是可能的。或者,您可以在运行时使用容器的方法添加合适的组件,然后使用and 。add()
validate()
repaint()
于 2012-07-29T01:56:58.583 回答