PDA

Ver la Versión Completa : Splash Screen en JAVA


RagdE
17-ago-2010, 08:09
Hola amigos esto es un código de un Splash Screen en JAVA.

Qué es un Splash Screen?

Es una Pantalla de Bienvenida, la que se muestra en los programas cuando se ejecutan.

este código es (HECHO POR MI SOY PROGRAMADOR DE Pascal, C/C++, Java).

Splash Screen

http://s3.subirimagenes.com:81/otros/previo/thump_4991335captura.jpg

Clase Panel

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
import javax.swing.JProgressBar;


public class Panel extends JPanel{

ImageIcon imagen; // imagen para mostrar
JProgressBar progreso; // barra de progreso para indicar cuando termina de cargar
BorderLayout esquema; // esquema del layout para la ubicacion de los componentes

public Panel(){ // constructor
esquema = new BorderLayout(5, 5); // se define el esquema (5,5) nortes, sur, este, oeste, centro
setLayout(esquema); // se establece el layout
progreso = new JProgressBar(); // se crea la barra de progreso
imagen = new ImageIcon("splash.jpg"); // se obtiene la imagen
this.add(progreso, BorderLayout.SOUTH); // se añade al panel la barra, en la posicion sur
this.setSize(imagen.getIconWidth(), imagen.getIconHeight()); // se establece el tamaño del panel
// mediante la dimencion de la imagen ancho y alto
}

public void paintComponent(Graphics g){ // metodo paintComponent para dibujar la imagen
super.paintComponent(g); // para que el panel se despligue sin errores
g.drawImage(imagen.getImage(), 0, 0, imagen.getIconWidth(), imagen.getIconHeight(), this); // se dibuja la imagen
this.setOpaque(false); // se establece el panel transparente para que se pueda ver la imagen
}

public void velocidadDeCarga() throws InterruptedException{ // motodo para controlar la barra
for(int i = 0; i<=100; i++){ // establece el recorrido de la barra de progreso
Thread.sleep(50); // pausas para dar el efecto de carga
progreso.setForeground(Color.GREEN); // color de la barra de progreso
progreso.setValue(i); // se asigna el valor de la barra
}
}
}

Clase frame

import java.awt.BorderLayout;
import javax.swing.JFrame;

public class frame extends JFrame{

Panel p; // clase Panel, la que nos creamos
/** Creates new form frame
* @throws InterruptedException */
public frame() throws InterruptedException{ // constructor
p = new Panel(); // se crea el objeto Panel
this.add(p, BorderLayout.CENTER); // se añade el panel en el centro
this.setSize(p.getWidth(), p.getHeight());// se establece el tamaño del frame
// ahora y lo mas importante se quita toda la decoracion de la ventana
//marco, botones minimizar, cerrar con el metodo setUndecorated(true)
//para dar el efecto de que solo se muestra la imagen con la barra...
this.setUndecorated(true);
this.setLocationRelativeTo(null);// se muestra el splash en el centro
setVisible(true); // se visualiza el Splash Screen
p.velocidadDeCarga();//se invoca al metodo velocidadDeCarga de la clase Panel
//para establecer el recorrido de la barra
this.dispose();// se cierra el Splash cuando termina el recorrido de la barra
/**********************
* Aqui pueden llamar a la ventana pricipal de sus aplicaciones
* y asi esto dará presencia a sus aplicaciones
*/
}

public static void main(String args[]) throws InterruptedException {
new frame(); // se invoca a la ventana frame

}
}

La imagen utilizada está Aqui (http://www.imaxenes.com/imagen/splash1xv87mu.jpg.html)

baduser
17-ago-2010, 08:42
Gracias compañero !!!

salu2

jchierro
17-ago-2010, 14:13
Gracias compañero por el codigo de Java.

felcon
18-ago-2010, 19:53
me sirve para mi proyecto gracias compañero saludos

Gepser
03-oct-2010, 19:30
Me encanta, gracias!