如何获取JComponent的副本?

时间:2017-07-16 17:03:21

标签: java swing jframe jbutton jcomponent

我创建了javax.swing.JButton以退出。如何将按钮的精确副本(重复)复制到另一个JFrame

private JButton signOut;    

public JButton getBtn(){
    //Any idea?
}

return signOut;不是一个选项,因为当我拨打setBounds()的{​​{1}}或setVisible()时,它会打开主页。

我是否必须使用按钮创建类的新Object才能获得此组件?还是有另一种解决方案吗?

2 个答案:

答案 0 :(得分:5)

将该按钮的构建抽象为某种工厂或功能。这样,您不必经常手动重新配置按钮,也不必担心复制/克隆(可能会非常混乱)

public JButton createButton(string caption) {
   //Create button here
}

答案 1 :(得分:-1)

好的,您可以复制该按钮并粘贴到另一个面板中。回到旧框架。复制该按钮代码。回到下一帧。单击按钮操作并粘贴它。 ☺