[英]Adding an instance of a panel from another class to a parent panel
此类的构造有问题吗? 我正在尝试将其实例添加到另一个类的JPanel中:
public class calculator2 extends JPanel {
public calculator2() {
JPanel x = new JPanel();
x.setLayout(new GridLayout(0,5));
x.add(new JLabel());
x.add(new JButton("<<"));
x.add(new JLabel());
x.add(new JButton(">>"));
x.add(new JLabel());
}
}
这就是我想在以下方面使用的功能:
calculator2 test = new calculator2();
JPanel panel3 = new JPanel(new BorderLayout());
panel3.add(test, BorderLayout.SOUTH);
我没有任何类型的运行时错误,只是没有出现。 当我将Calculator2类中的代码放在同一类中时,将在代码的第二部分中使用它。 谢谢您的考虑。
这实际上只是一个例子,我有一个使用动作侦听器等的大约25个组件的完整类,并希望使用上述方法将其添加到面板中。
在这里,您只是在创建面板,而无需将其添加到任何可见的地方。 尝试使用从JPanel继承的parent方法,而不是在构造函数中创建另一个JPanel的新实例。
这将是,只需删除名为x的实例。
public class calculator2 extends JPanel {
public calculator2() {
super();
setLayout(new GridLayout(0,5));
add(new JLabel());
add(new JButton("<<"));
add(new JLabel());
add(new JButton(">>"));
add(new JLabel());
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.