Boa dia pessoal,
Tenho dois JPanel :
public class JPanel1 extends javax.swing.JPanel {
public JPanel1() {
super.setPreferredSize(new java.awt.Dimension(400, 400));
}
@Override
protected void paintComponent(java.awt.Graphics g) {
super.paintComponent(g);
java.awt.Graphics2D g2d = (java.awt.Graphics2D) g.create();
g2d.setColor(java.awt.Color.white);
g2d.fillRect(0, 0, 400, 400);
g2d.dispose();
g.dispose();
}
}
public class JPanel2 extends javax.swing.JPanel {
public JPanel2() {
super.setPreferredSize(new java.awt.Dimension(40, 40));
}
@Override
protected void paintComponent(java.awt.Graphics g) {
super.paintComponent(g);
java.awt.Graphics2D g2d = (java.awt.Graphics2D) g.create();
g2d.setColor(java.awt.Color.black);
g2d.fillOval(0, 0, 40, 40);
g2d.dispose();
g.dispose();
}
}
Gostaria de adicionar o JPanel2 no JPanel1:
public class NewJFrame extends javax.swing.JFrame {
public NewJFrame() {
initComponents();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javaapplication.JPanel1();
jPanel2 = new javaapplication.JPanel2();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
getContentPane().setLayout(new java.awt.FlowLayout());
jPanel1.add(jPanel2);
getContentPane().add(jPanel1);
pack();
}// </editor-fold>
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javaapplication.JPanel1 jPanel1;
private javaapplication.JPanel2 jPanel2;
// End of variables declaration
}
Porém, quando eu executo aparece somente o JPanel1.
Alguém tem alguma sugestão de como fazer isto?
Desde já agradeço.