es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Problema básico de las clases JPanel/JFrame en Java.

Empecé no hace mucho tiempo a aprender Java a través de tutoriales y videos, y después de entender algunas cosas (cómo funcionan los botones, los diseños, el audio y algunas otras cosas), uno de mis objetivos ahora es crear un pequeño juego interactivo.

Escribí una parte bastante grande del juego en la Clase Principal y estaba funcionando bien, pero se volvió un desorden después de un tiempo.

Así que decidí intentarlo de nuevo desde el principio utilizando diferentes clases para cada parte del juego para hacer que el código parezca más claro y comprensible.

Pero tengo un problema desde el principio y después de unas pocas horas buscando tutoriales, respuestas en foros y no encontrar una respuesta precisa, creo que es mejor si ves mi problema exactamente (¡que es muy simple!)

-Así que solo construí el JFrame en una clase (uso la Clase Principal solo para lanzar el frame, y funciona bien):

import javax.swing.*;
import java.awt.*;

public class principalFrame {

public principalFrame(){

    JFrame mainFrame = new JFrame();
    mainFrame.setVisible(true);
    mainFrame.setSize(1200,750);
    mainFrame.getContentPane().setBackground(Color.BLACK);
    mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    mainFrame.setResizable(false);

}


}

y creé un JPanel en **otra** clase:

import javax.swing.*;
import java.awt.*;

public class mainMenu{

public mainMenu(){

    JPanel menuPanel = new JPanel();

    menuPanel.setSize(300,300);
    menuPanel.setBackground(Color.BLUE);

}


}

Y mi objetivo es agregar el JPanel dentro del JFrame. Y… no entiendo cómo hacerlo.

Intenté agregar la clase menuPanel como un objeto en la clase mainFrame para poder agregar el JPanel pero no funcionó. Luego intenté un montón de otras soluciones de lo que leí en preguntas antiguas, pero nada realmente me ayudó.

PD: Sé que no agregué ningún administrador de diseño o cualquier otra cosa en el código aquí porque quiero mantener el código muy simple para la pregunta.

Tags:  , , , ,

Answer

Comments are closed.