我在netbeans中创建了两个类;其中一个是JPanel表单,另一个是JFrame表单; 如何将JPanel类添加到JFrame表单类中? 我在JFrame表单类的构造函数中编写了这段代码,但它没有用。
public JFrameClass() {
initComponents();
this.getContentPane().add(jpc = new JPanelClass());
jpc.setVisible(true);
this.pack();
this.setVisible(true);
}
答案 0 :(得分:3)
您需要确保从JPanelClass
所在位置JFrameClass
可见。
然后执行以下操作:
JPanelClass jpc = new JPanelClass()
this.getContentPane().add(jpc);
此外,无需致电jpc.setVisible(true);
结果代码应为:
public JFrameClass() {
initComponents();
JPanelClass jpc = new JPanelClass()
getContentPane().add(jpc);
pack();
setVisible(true);
}
答案 1 :(得分:1)
如何在netbeans中将JPanel类添加到JFrame表单类中?
在JFrame
课程中,只需设置JPanel
并将其添加到Container
。
JPanel panel = new JPanelClass();
controls.add(panel);
注意:您应该有一些名为createAndAddCompontents()
的私有void方法,并在构造函数中调用它。
public JFrameClass() {
...
createAndAddCompontents();
}
然后当你想在main()方法中执行你的应用程序时,你应该像这样调用它:
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
YouJFrameClass initAndShowComponents = new YouJFrameClass();
initAndShowComponents.setVisible(true);
}
});
答案 2 :(得分:-1)
设置JPanel的边界,以便容器知道在哪里绘制它
public void run() {
NewJFrame frame = new NewJFrame();
NewJPanel panel = new NewJPanel();
panel.setBounds(0, 0, 200, 200);
frame.add(panel);
frame.setVisible(true);
}