La semana pasada tuvimos que hacer el juego del Ahorcado (hangman), pero el profesor me corrigió porque hice un diseño muy estructurado. Solo cree un una clase con un JFrame y ahí metí todos los métodos, eventos, gui, todo junto.
Ahora estoy modificando el código para que quede Orientado a Objetos, pero tengo problemas para comunicar los objetos entre sí, sobre todo los métodos y eventos con la interfaz gráfica.
Lo que hice fue dividir cada panel (palabra, letra, intentos y mensajes), para cada panel cree una clase, después cree una clase llamada Ventana en la que cree dos paneles, izquierdo y derecho, en el de la izquierda puse las instancias de las clases que ya mencioné y en el de la derecha la instancia de la clase del panel imagen. Y está todo bien.
Pero ahora no sé donde poner los métodos y los eventos. El profesor dijo algo como que había que crear un clase con los métodos aparte y después crear una instancia para comunicar los métodos con la interfaz, pero estoy teniendo problemas.
Por ejemplo:
Tengo este método para mostrar tantos guiones como letra tiene la palabra (gato = _ _ _ _ )
Código Java:
Ver originalpublic void presentarRayas(){
for(int i=0; i<palabraElegida.length(); i++){
guionesBajosExternos +="_ ";
}
lbl_palabra.setText(guionesBajosExternos);
tamanoG = lbl_palabra.getFont();
lbl_palabra.
setFont(new Font(tamanoG.
getFontName(),tamanoG.
getStyle(),
20)); }
Ese método usa la etiqueta lbl_palabra, que se encuentra en otra clase: la clase PanelPalabra, cuando declaré el JLabel le puse el método de acceso protected y después lo cambié a public, pero como quiera me sigue marcando error lbl_palabra can´t be resolved.
No sé que tengo que hacer, para ese método por ejemplo podría ponerlo en la clase PanelPalabra y ya no me daría error, pero hay métodos en los que tengo que usar dos JLabels distintos y no sé entonces como podría "acomodarlo", además no estoy seguro de que esa sea la mejor forma....