java - Change JFrame's background color -
i following video tutorial tries make java game in 2d. have found course's author's approach not working because of changing jframe's color doesn't show up!
his approach, window class:
package modelos; import java.awt.color; import java.awt.event.*; import javax.swing.jframe; public class ventana extends jframe implements windowlistener { public ventana(string titulo){ super(titulo); this.setsize(800,600); addwindowlistener(this); setbackground(color.black); } @override public void windowopened(windowevent we) { } @override public void windowclosing(windowevent we) { system.exit(0); } @override public void windowclosed(windowevent we) { } @override public void windowiconified(windowevent we) { } @override public void windowdeiconified(windowevent we) { } @override public void windowactivated(windowevent we) { } @override public void windowdeactivated(windowevent we) { } } panel class supposed graph rectangles, triangles, circles represent game's objects:
package modelos; import java.awt.*; import java.util.arraylist; import javax.swing.jpanel; public class panelfg extends jpanel { arraylist adibujar; public panelfg(arraylist dibujar){ this.adibujar=dibujar; } public void print(graphics g){ dibujable dib; (int = 0; <adibujar.size(); i++) { dib = (dibujable) adibujar.get(i); dib.dibujar(g); } } } and main
package ejecuciones; import modelos.*; import java.awt.button; import java.awt.color; import java.util.arraylist; public class main { /** * @param args command line arguments */ public static void main(string[] args) { ventana nuestraventana = new ventana("juego de naves"); arraylist arreglodeobjetos = new arraylist(); panelfg nuestropanel = new panelfg(arreglodeobjetos); nuestraventana.add(nuestropanel); nuestraventana.setsize(800,600); nuestraventana.setvisible(true); } } however approach:
window:
package modelos; import java.awt.color; import java.awt.event.*; import javax.swing.jframe; public class ventana extends jframe implements windowlistener { public ventana(string titulo){ super(titulo); this.setsize(800,600); addwindowlistener(this); this.getcontentpane().setbackground(color.black); this.setvisible(true); } @override public void windowopened(windowevent we) { } @override public void windowclosing(windowevent we) { system.exit(0); } @override public void windowclosed(windowevent we) { } @override public void windowiconified(windowevent we) { } @override public void windowdeiconified(windowevent we) { } @override public void windowactivated(windowevent we) { } @override public void windowdeactivated(windowevent we) { } } panel class equal.
main:
package ejecuciones; import modelos.*; import java.awt.button; import java.awt.color; import java.util.arraylist; public class main { /** * @param args command line arguments */ public static void main(string[] args) { ventana nuestraventana = new ventana("juego de naves"); arraylist arreglodeobjetos = new arraylist(); panelfg nuestropanel = new panelfg(arreglodeobjetos); } }
think due author did not used getcontentpane() when creating main jframe set background black, , did.
i have followed topic: jframe.setbackground() not working -- why?
also not understand how code work , other not, considering both using netbeans 8.1.
any opinion/suggestion/explanation?
you never add control jpanel container .... gray color default color background de jpanel , black set jframe. want do?

Comments
Post a Comment