Клонирование компонента Swing - PullRequest
0 голосов
/ 12 октября 2010

Я реализую пример копирования / вставки, и когда я устанавливаю буфер обмена как:

clipboard.setContents (new MyTransferable (image_label), null);

Я хочу, чтобы image_label (это JLabel) был клоном скопированной метки

Как я могу это сделать?

Ответы [ 2 ]

5 голосов
/ 12 октября 2010

Поскольку все компоненты Swing являются сериализуемыми, вы можете просто сериализовать их в поток памяти / байтов и обратно десериализовать.Это хороший метод для глубокого копирования классов.Если вы хотите немного ускорить его, перепишите входящие / исходящие потоки, чтобы удалить код, связанный с параллелизмом.

0 голосов
/ 12 октября 2010

JComponents не переопределяют клон, но они являются bean-компонентами, поэтому вы можете использовать что-то вроде BeanUtils для копирования свойств из метки в новую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...