我对Java编程相对较新,我希望能够将控件添加到我在另一个类中创建的GUI,因为我将多次使用它。我能做到这一点的唯一方法是将表单和面板设置为超类全局,这样我就可以在子类中访问它。但是我确信我已经阅读过,只有在没有其他选择的时候,我才应该把事情做成全局或持久。
还有其他方法或者这是否可以接受。非常感谢。我已经添加了以下类作为示例。
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Image;
import javax.swing.*;
import javax.swing.border.LineBorder;
public class BasicForm {
JFrame frmBasic;
JPanel panContainer;
public BasicForm() {
frmBasic = new JFrame();
frmBasic.setTitle("Created By Inspired IT");
frmBasic.setBounds(100, 100, 450, 300);
frmBasic.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panContainer = new JPanel();
panContainer.setBorder(new LineBorder(new Color(0, 0, 0), 3));
frmBasic.getContentPane().add(panContainer, BorderLayout.CENTER);
panContainer.setLayout(null);
JLabel lblLogo = new JLabel("");
Image img = new ImageIcon(this.getClass().getResource("/logo.png")).getImage();
lblLogo.setIcon(new ImageIcon(img));
lblLogo.setBounds(343, 11, 81, 102);
panContainer.add(lblLogo);
frmBasic.setVisible(true);
}
}
public class FormGUI extends BasicForm {
public FormGUI() {
JButton btnContinue = new JButton("Continue");
btnContinue.setBounds(336, 228, 88, 23);
this.panContainer.add(btnContinue);
}
}