JFrame
Buen día y Bienvenidos al primer tema del blog el cual tratará acerca de como hacer un JFrame en java el cual vamos aocupar a lo largo del blog para poder visualizar los resultados de las futuras practicas, es decir, que no vamos a ocupar para casi nada la "consola" del IDE en este caso Netbeans.
Este post es muy básico, el motivo es para que algunos compañeros conoscan algunos conceptos básicos y poder avanzar mas rápido, espero y realizen comentarios y preguntas si es que las tienen para poder resolver sus dudas.
Antes de comenzar las herramientas que utilizaremos serán las siguientes:
- JDK de JAVA
- Netbeans IDE (yo utilizare la versión 7.0)
No me detendré a explicar como instalar las herramientas, así que comenzemos...
JFrame
Un JFrame es una ventana, el JFrame es una extensión de Frame del paquete awt.
Este JFrame o ventana nos servira para colocar componentes necesarios para nuestras aplicaciones por ejemplo botones, etiquetas, panel's, listas, radiobotones, etc, etc...
En todas las prácticas que realizemos el unico componente que será agregado directamente al JFrame será el JPanel.
- setTitle(String titulo)
- setDefaultCloseOperation(int cerrar);
- setBounds(int Posicion x, int Posicion y, int Ancho, int Largo)
Para hacer un JFrame tenemos dos opciones, crear un objeto tipo JFrame o heredar la clase JFrame.
En este ejemplo realizaremos la segunda opción, para esto crearemos una clase llamada ventana heredando la clase JFrame.
Para heredar la clase JFrame se agrega la palabra extends y en seguida la clase que queremos heredar en este caso JFrame e importamos el paqueteawt.JFrame.
public class ventana extends JFrame{
}
Ahora creamos el constructor de la clase
public class ventana extends JFrame{
//constructor
public ventana(){
}
}
Para agregar las propiedades mencionadas anteriormente utilizaremos la palabra reservada this, la cual hace referencia a la clase donde se esté aplicando.
Ahora agregaremos una por una las propiedades mencionadas anteriormente la primera será setTitle(String titulo). la cual agrega un título a la ventana.
public class ventana extends JFrame{
//constructor
public ventana(){
this.setTitle("Mi primer ventana");
//setTitle(String titulo)
}
}
Ahora tenemos que stablecer que hará la ventana al cerrar con la opción setDefaultCloseOperation(int cerrar):
Cerrarse y terminar la ejecución (EXIT_ON_CLOSE)
Cerrarse y no terminar la ejecución (DISPOSE_ON_CLOSE)
En este caso cerraremos y terminaremos la ejecución
public class ventana extends JFrame{
//constructor
public ventana(){
this.setTitle("Mi primer ventana");
//setTitle(String titulo)
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
//setDefaultCloseOperation(int cerrar)
}
}
Por último agregamos un tamaño y una posición a la ventana con la propiedad setBounds(int Posicion x, int Posicion y, int Ancho, int Largo):
la cual contiene cuatro variables tipo enteras:
int Posicion x que es la posición del eje x que tendrá la ventana en la pantalla
int Posicion y que es la posición del eje y que tendrá la ventana en la pantalla
int Ancho que es el ancho que tendrá la ventana
int Largo que es el largo que tendrá la ventana
public class ventana extends JFrame{
//constructor
public ventana(){
this.setTitle("Mi primer ventana");
//setTitle(String titulo)
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
//setDefaultCloseOperation(int cerrar)
this.setBounds(300, 100, 200, 100);
//setBounds(int Posicion x, int Posicion y, int Ancho, int Largo)
}
}
Ahora ejecutamos con el método main haciendo una instancia de la clase
public class ventana extends JFrame{
//constructor
public ventana(){
this.setTitle("Mi primer ventana");
//setTitle(String titulo)
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
//setDefaultCloseOperation(int cerrar)
this.setBounds(300, 100, 200, 100);
//setBounds(int Posicion x, int Posicion y, int Ancho, int Largo)
}
public static void main(String []args){
ventana ejecutar = new ventana();//ejecutar es la instancia de la clase
ejecutar.setVisible(true);//setVisible(true) para ver la ventana
}
}
Aquí terminamos nuestra primer ventana espero realizen comentarios y/ó críticas. En el próximo post realizaremos JPanels los cuales serán nuestros contenedores para los componentes.