0% encontró este documento útil (0 votos)
78 vistas8 páginas

10 Guia Java

Este documento presenta una guía académica sobre la introducción al Swing en Java. Explica cómo crear ventanas, paneles y botones utilizando Swing y agregar eventos de clic. Muestra código para generar una ventana simple y luego añadir objetos como texto, líneas y formas utilizando la clase Graphics. También cubre cómo organizar los componentes visuales en paneles anidados y manejar eventos de botón.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
78 vistas8 páginas

10 Guia Java

Este documento presenta una guía académica sobre la introducción al Swing en Java. Explica cómo crear ventanas, paneles y botones utilizando Swing y agregar eventos de clic. Muestra código para generar una ventana simple y luego añadir objetos como texto, líneas y formas utilizando la clase Graphics. También cubre cómo organizar los componentes visuales en paneles anidados y manejar eventos de botón.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

Universidad Nacional del Altiplano Puno

Escuela Profesional de Ingeniera de Sistemas


CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES

GUA ACADMICA Nro. 10

TEMA: INTRODUCCIN AL SWING

Apellidos y Nombres: Nro. Matrcula: .

OBJETIVOS:

Aprender la programacin Visual en el Lenguaje Java

REQUERIMIENTOS:

PC con Windows.
jdk-6u10-windows-i586-p.exe
netbeans-6.5-ml-windows.exe

PARTE 1: EJEMPLOS DE JAVA

A continuacin iniciaremos con el Capitulo destinado a la Programacin Visual, utilizaremos


la librera swing.

1.1 FRAMES

a. Cree un nuevo proyecto de tipo Java Application y en la opcin Project Name coloque
pVentana, y en la opcin Create Main Class coloque: pventana.CVentana, luego haga
click en Finish.

b. Copie y ejecute el siguiente cdigo (Archivo: CVentana.java):


package pventana;
import javax.swing.*;

public class CVentana extends JFrame


{
public static void main(String[] args)
{
CVentana oMiven = new CVentana();
oMiven.setVisible(true);
}
}

Resultado:

c. El cdigo genera una ventana sin contenido y sin eventos Implementados, haga click en
La X para cerrar la ventana. Notara que la Aplicacin aun se sigue ejecutando.

d. Hagla click en el Boton Stop para parar la ejecucin de la Aplicacin.

Ing. Juan Antonio Flores Moroco 1


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES

e. Ahora personalizaremos el Frame, para lo cual insertaremos el constructor CVentana,


agregue y modifique el siguiente cdigo (Archivo: CVentana.java):
package pventana;
import javax.swing.*;

public class CVentana extends JFrame


{
public CVentana()
{
setTitle("Ventana padre");
setSize(300, 200);
setResizable(false);
setLocation(200, 100);
}
public static void main(String[] args)
{
CVentana oMiven = new CVentana();
oMiven.setVisible(true);
}
}

Resultado:

f. El cdigo genera un Frame (Formulario) que no tiene implementado los eventos, repita los
pasos c y d para parar la Ejecucin de la Aplicacin.

g. A continuacin agregaremos el evento windowClosing para poder cerrar el Frame,


agregue y modifique el siguiente cdigo (Archivo: CVentana.java):
package pventana;
import java.awt.event.*;
import javax.swing.*;

public class CVentana extends JFrame


{
public CVentana ()
{
addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e) { System.exit(0); } });
setTitle("Ventana padre");
setSize(300, 200);
setResizable(false);
setLocation(200, 100);
}
public static void main(String[] args)
{
CVentana oMiven = new CVentana();
oMiven.setVisible(true);
}
}

Ing. Juan Antonio Flores Moroco 2


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES

Resultado: Como podr notar, al hacer click en el Boton X, la aplicacin termina.

h. El Frame generado est ubicacin en la parte superior Izquierda de la pantalla; lo que


haremos ahora ser ubicar el Frame en el Centro de la Pantalla. Agregue y modifique el
encabezado y el constructor CVentana con el siguiente cdigo (Archivo: CVentana.java):
package pventana;

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

public class CVentana extends JFrame


{
public CVentana()
{
addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e) { System.exit(0); } });

Toolkit oTk = Toolkit.getDefaultToolkit();


Dimension oDi = oTk.getScreenSize();
int iWidth = 300, iHeight = 200;

setSize(iWidth, iHeight);
setLocation((oDi.width / 2) - (iWidth / 2), (oDi.height / 2) - (iHeight / 2));

setTitle("Vetana padre");
setResizable(false);
}
// ... No modifique el mtodo main
}

Resultado: EL Frame ubicado en el centro de la pantalla

i. Ahora empecemos a colocar objetos en el Frame. Agregue el mtodo paint con el


siguiente cdigo (Archivo: CVentana.java):
//... No modofique el Encabezado
public class CVentana extends JFrame
{
public CVentana1()
{
//...
int iWidth = 500, iHeight = 300;
//...
}
public void paint(Graphics g)
{

Ing. Juan Antonio Flores Moroco 3


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES
g.drawString("Holas amigos de Sistemas", 40, 50);
g.drawLine(40, 60, 200, 60);

g.setColor(Color.BLUE);
g.drawString("mensaje a Color", 40, 80);

g.setColor(Color.red);
g.drawLine(40, 100, 200, 100);

g.setColor(Color.ORANGE);
g.drawRect(40, 120, 150, 50);

g.setColor(Color.GREEN);
g.fillRect(40, 200, 150, 50);
}
// ... No modifique el mtodo main
}
Resultado:

j. Como podr notar se pueden agregar varios objetos al Frame utilizando la clase
Graphics. Agregue el siguiente cdigo al mtodo paint. (Archivo: CVentana.java):
//... No modofique el Encabezado
public class CVentana extends JFrame
{
//... No modifique el Constructor CVentana
public void paint(Graphics g)
{
//...
g.setColor(Color.BLACK);
Font oFn = new Font("TimeNewRoman", Font.ITALIC, 18);
g.setFont(oFn);
g.drawString("Sistemas TimeNewRoman", 220, 50);

g.setFont(new Font("Arial", Font.BOLD, 16));


g.drawString("Sistemas Arial", 220, 80);

g.setFont(oFn);
g.drawString("Sistemas TimeNewRoman", 220, 210);
}
// ... No modifique el mtodo main
}
Resultado:

Ing. Juan Antonio Flores Moroco 4


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES

1.2 PANEL - JPANEL

Generalmente las aplicaciones que se desarrollan en Java, utilizan un Panel que contiene
todos los objetos de una aplicacin, este Panel debe estar dentro de un Frame; un Panel
puede estar dentro de otro Panel, tambin el Panel se utiliza para ordenar los Objetos.
Veamos un ejemplo para entender mejor.

a. Cree un nuevo proyecto de tipo Java Application y en la opcin Project Name coloque
pPanelcito, y en la opcin Create Main Class coloque: ppanelcito. CPanelcito, luego haga
click en Finish

b. Copie y ejecute el siguiente cdigo (Archivo: CPanelcito.java):


package ppanelcito;

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

// Se define la subClase CPanelCompon que hereda atributos y propiedades de la Clase JPanel


class CPanelCompon extends JPanel
{
public CPanelCompon()
{
// Se define la forma de distribucin de los Objetos en el Panel (Border)
setLayout(new BorderLayout());
// Se Agrega el Objeto JTextField al Panel
add(new JTextField("Introduce texto"), BorderLayout.NORTH);
// Se agrega el Panel CPanelBoton al Panel CPanelCompon
add(new CPanelBoton(), BorderLayout.SOUTH);
}
}
// Se define la subClase CPanelBoton que hereda atributos y propiedades de la Clase JPanel
class CPanelBoton extends JPanel
{
public CPanelBoton()
{
// Se define la forma de distribucin de los Objetos en el Panel (Flow)
setLayout(new FlowLayout());
// Se Agregan los Objetos JButton al Panel CPanelBoton
add(new JButton("Boton 1"));

Ing. Juan Antonio Flores Moroco 5


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES
add(new JButton("Boton 2"));
add(new JButton("Boton 3"));
add(new JButton("Boton 4"));
add(new JButton("Boton 5"));
}
}
public class CPanelcito extends JFrame
{
public CPanelcito()
{
addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e) { System.exit(0); } });

int iWidth = 500, iHeight = 150;


Toolkit oTk = Toolkit.getDefaultToolkit();
Dimension oDi = oTk.getScreenSize();
setSize(iWidth, iHeight);
setLocation((oDi.width / 2) - (iWidth / 2), (oDi.height / 2) - (iHeight / 2));

setTitle("Ventana con Panel");


setResizable(false);

// Se define el Objeto oCon que manipula el Contenedor de Paneles


Container oCon = getContentPane();
// Se agrega el Panel CPanelCompon al Frame CPanelcito
oCon.add(new CPanelCompon());
}
public static void main(String[] args)
{
CPanelcito oMiven = new CPanelcito();
oMiven.setVisible(true);
}
}

Resultado:

1.3 PANEL DE BOTONES Y EVENTOS

A continuacin desarrollaremos una Aplicacin que maneja los eventos del Boton.

a. Cree un nuevo proyecto de tipo Java Application y en la opcin Project Name coloque
pEventoBoton, y en la opcin Create Main Class coloque: peventoboton. CPanelBoton,
luego haga click en Finish

b. Copie y ejecute el siguiente cdigo (Archivo: CPanelBoton.java):


package peventoboton;

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

Ing. Juan Antonio Flores Moroco 6


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES
class CPanelBoton extends JPanel implements ActionListener
{
private JButton BotonVerde;
private JButton BotonRojo;
private JButton BotonBlanco;
private JButton BotonReset;
private Color oColBase;

public CPanelBoton()
{
BotonVerde = new JButton("Verde");
BotonRojo = new JButton("Rojo");
BotonBlanco = new JButton("Blanco");
BotonReset = new JButton("Restablecer");
oColBase = getBackground();

add(BotonVerde);
add(BotonRojo);
add(BotonBlanco);
add(BotonReset);

BotonVerde.addActionListener(this);
BotonRojo.addActionListener(this);
BotonBlanco.addActionListener(this);
BotonReset.addActionListener(this);
}
public void actionPerformed(ActionEvent evt)
{
Object oOrigen = evt.getSource();
Color oCol = getBackground();

if(oOrigen == BotonVerde)
oCol = Color.GREEN;
else if(oOrigen == BotonRojo)
oCol = Color.RED;
else if(oOrigen == BotonBlanco)
oCol = Color.WHITE;
else if(oOrigen == BotonReset)
oCol = oColBase;

setBackground(oCol);
repaint();
}
}

public class CEventoBoton extends JFrame


{
public CEventoBoton()
{
addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e) { System.exit(0); } });

int iWidth = 500, iHeight = 150;


Toolkit oTk = Toolkit.getDefaultToolkit();
Dimension oDi = oTk.getScreenSize();
setSize(iWidth, iHeight);
setLocation((oDi.width / 2) - (iWidth / 2), (oDi.height / 2) - (iHeight / 2));

setTitle("Botones con Eventos");


setResizable(false);

Container oCon = getContentPane();


oCon.add(new CPanelBoton());
}

Ing. Juan Antonio Flores Moroco 7


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES
public static void main(String[] args)
{
CEventoBoton oMiBot = new CEventoBoton();
oMiBot.setVisible(true);
}
}

Resultado:

Ing. Juan Antonio Flores Moroco 8

También podría gustarte