I want to add 4 JPanels to the JApplet I have, and I give to each one of them a different color. But none of the colors are shown - I mean I can’t see the output. No colors at all. The following code is in the init() method.
this.setSize(1400, 780);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.setLayout(null) ;
setLayout(null) ;
Panel1 = new JPanel() ;
Panel2 = new JPanel () ;
Panel3 = new JPanel() ;
Panel4 = new JPanel() ;
Label1 = new JLabel ("Label1") ;
Label2 = new JLabel ("Label2") ;
Label3 = new JLabel ("Label3") ;
Label4 = new JLabel ("Label4") ;
Panel1.add(Label1) ;
Panel2.add(Label2) ;
Panel3.add(Label3) ;
Panel4.add(Label4) ;
// Panel 1 "About Me"
Panel1.setSize(140,390) ;
Panel1.setLocation(0,0) ;
Panel1.setBackground(Color.red) ;
Panel1.setVisible(true) ;
this.add(Panel1) ;
// Panel 2 "MyHoppies"
Panel2.setSize(140,390) ;
Panel2.setLocation(0,700) ;
Panel2.setBackground(Color.yellow) ;
this.add(Panel2) ;
// Panel 3 "Photo Gallery"
Panel3.setSize(140,390) ;
Panel3.setLocation(390,0) ;
Panel3.setBackground(Color.black) ;
this.add(Panel3) ;
// Panel 4 "Happey face"
Panel4.setSize(140,390) ;
Panel4.setLocation(390,700) ;
Panel4.setBackground(Color.pink) ;
this.add(Panel4) ;
this.setVisible(true) must be last code line in the GUI constructor
use Using Java Naming Conventions correctly then Panel1 should be panel1 e.i.
don't extends JFrame or JApplet, create that as local variable with the same way as for Panel1
don't use NullLayout, use proper LayoutManager instead, in this case GridLayout probably, otherwise JFrames contents isn't resiziable with JFrame

code
import java.awt.*;
import javax.swing.*;
public class ColorongPanels {
private JFrame frame = new JFrame("ColorongPanels");
private JPanel panel1 = new JPanel();
private JPanel panel2 = new JPanel();
private JPanel panel3 = new JPanel();
private JPanel panel4 = new JPanel();
private JLabel label1 = new JLabel("Label1");
private JLabel label2 = new JLabel("Label2");
private JLabel label3 = new JLabel("Label3");
private JLabel label4 = new JLabel("Label4");
public ColorongPanels() {
frame.setLayout(new GridLayout(2, 2, 5, 5));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel1.setBackground(Color.red);
panel1.setLayout(new BorderLayout());
panel1.add(label1, BorderLayout.CENTER);
panel2.setBackground(Color.yellow);
panel2.setLayout(new BorderLayout());
panel2.add(label2, BorderLayout.CENTER);
panel3.setBackground(Color.black);
panel3.setLayout(new BorderLayout());
panel3.add(label3, BorderLayout.CENTER);
panel4.setBackground(Color.pink);
panel4.setLayout(new BorderLayout());
panel4.add(label4, BorderLayout.CENTER);
frame.add(panel1);
frame.add(panel2);
frame.add(panel3);
frame.add(panel4);
frame.setLocationRelativeTo(null);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new ColorongPanels();
}
});
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With