Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.*;
- public class Main extends JLayeredPane {
- static JFrame frame;
- static Main main;
- static Dimension screenSize;
- public Main() {
- JPanel backPanel = new BackPanel();
- JPanel frontPanel = new FrontPanel();
- add(backPanel, new Integer(7));
- add(frontPanel, new Integer(8));
- new Thread(() -> {
- while (true){
- repaint();
- }
- }).start();
- }
- public static void main(String[] args) {
- screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- frame = new JFrame("Game"); // Just use the constructor
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- main = new Main();
- frame.add(main, BorderLayout.CENTER);
- frame.pack();
- frame.setSize(screenSize);
- frame.setLocationRelativeTo(null);
- frame.setVisible(true);
- }
- public class BackPanel extends JPanel{
- public boolean drawn = false;
- public BackPanel(){
- setVisible(true);
- setOpaque(false);
- setSize(screenSize);
- JLabel test1 = new JLabel("Test1");
- JLabel test2 = new JLabel("Test2");
- add(test1);
- add(test2);
- }
- @Override
- public void paintComponent(Graphics g){
- super.paintComponent(g);
- drawOnce(g);
- }
- public void drawOnce(Graphics g){
- if (!drawn){
- g.setColor(Color.red);
- g.fillRect(0, 0, screenSize.width, 200);
- drawn=true;
- }
- }
- }
- public class FrontPanel extends JPanel{
- public FrontPanel(){
- setVisible(true);
- setOpaque(false);
- setSize(screenSize);
- JLabel test = new JLabel("Test");
- add(test);
- }
- @Override
- public void paintComponent(Graphics g){
- super.paintComponent(g);
- g.setColor(Color.blue);
- g.fillRect(0+screenSize.width/2, 0, screenSize.width/4, 300);
- }
- }
- }
- public void drawOnce(Graphics g){
- if (!drawn){
- g.setColor(Color.red);
- g.fillRect(0, 0, screenSize.width, 200);
- drawn=true;
- a++;
- System.out.println("BackPanel : "+a);
- }
- }
- public void paintComponent(Graphics g){
- super.paintComponent(g);
- g.setColor(Color.blue);
- g.fillRect(0+screenSize.width/2, 0, screenSize.width/4, 300);
- a++;
- System.out.println("FrontPanel : "+a);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement