Sei sulla pagina 1di 7

Universidad Nacional del Altiplano Puno

Escuela Profesional de Ingeniera de Sistemas


CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES

GUA ACADMICA Nro. 11

TEMA: EJEMPLOS DE 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

1.1 EVENTOS EN CAJA DE TEXTO

A continuacin desarrollaremos una Aplicacin que maneja los eventos de la Caja de Texto.

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

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


package peventotext;

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

class CPanelText extends JPanel implements ActionListener


{
private JTextField TxtCodigo;
private JTextField TxtNombre;
private JPasswordField TxtPasswd;
public CPanelText()
{
TxtCodigo = new JTextField(3);
TxtNombre = new JTextField("Ingrese su Nombre");
TxtPasswd = new JPasswordField(10);

add(TxtCodigo);
add(TxtNombre);
add(TxtPasswd);

TxtCodigo.addActionListener(this);
TxtNombre.addActionListener(this);
TxtPasswd.addActionListener(this);
}
public void actionPerformed(ActionEvent evt)
{
Object oOrigen = evt.getSource();
if(oOrigen == TxtCodigo)
JOptionPane.showMessageDialog(null, "Cdigo = " + evt.getActionCommand());
else if(oOrigen == TxtNombre)
JOptionPane.showMessageDialog(null, "Nombre = " + evt.getActionCommand());
else if(oOrigen == TxtPasswd)
JOptionPane.showMessageDialog(null, "Contrasea = " + evt.getActionCommand());

Ing. Juan Antonio Flores Moroco 1


Universidad Nacional del Altiplano Puno
Escuela Profesional de Ingeniera de Sistemas
CURSO: TECNOLOGA DE DESARROLLO DE APLICACIONES
}
}
public class CEventoTexto extends JFrame
{
public CEventoTexto()
{
addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e) { System.exit(0); } });

int iWidth = 400, iHeight = 100;


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

setTitle("Caja de Texto con Eventos");


setResizable(false);

Container oCon = getContentPane();


oCon.add(new CPanelText());
}
public static void main(String[] args)
{
CEventoTexto oTxt = new CEventoTexto();
oTxt.setVisible(true);
}
}

Resultado:

1.2 EVENTOS CON ETIQUETAS

A continuacin desarrollaremos una Aplicacin que maneja las etiquetas.

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

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


package peventolabel;

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

class CPanelLabel extends JPanel implements ActionListener


{
private JButton BtnUno;
private JButton BtnDos;
private JLabel LblUno;

Ing. Juan Antonio Flores Moroco 2


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

public CPanelLabel()
{
BtnUno = new JButton("Uno");
BtnDos = new JButton("Dos");
LblUno = new JLabel("Etiqueta del Boton Uno");
LblDos = new JLabel("Etiqueta del Boton Dos");

add(BtnUno);
add(LblUno);
add(BtnDos);
add(LblDos);

BtnUno.addActionListener(this);
BtnDos.addActionListener(this);
}
public void actionPerformed(ActionEvent evt)
{
Object oOrigen = evt.getSource();
Icon icono = new ImageIcon("c:\\google_logo.gif");

if(evt.getActionCommand().equals("Uno"))
{
LblUno.setText("El Boton " + BtnUno.getText() + " fue Clickeado");
LblUno.setIcon(icono);
LblUno.setVerticalTextPosition(SwingConstants.BOTTOM);
LblUno.setHorizontalTextPosition(SwingConstants.RIGHT);
}
else if(oOrigen == BtnDos)
{
LblDos.setText("El Boton " + BtnDos.getText() + " fue Clickeado");
LblDos.setToolTipText("Este es la etiqueta del Boton Dos");
}
}
}
public class CEventoLabel extends JFrame
{
public CEventoLabel()
{
addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e) { System.exit(0); } });

int iWidth = 500, iHeight = 100;


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

setTitle("Etiqueta con Eventos");


setResizable(false);

Container oCon = getContentPane();


oCon.add(new CPanelLabel());
}
public static void main(String[] args)
{
CEventoLabel oTxt = new CEventoLabel();
oTxt.setVisible(true);
}
}
Resultado:

Ing. Juan Antonio Flores Moroco 3


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

1.3 BOTONES DE ESTADO

A continuacin desarrollaremos una Aplicacin que maneja las etiquetas.

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

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


package pbotonestado;

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

class CPanelEstado extends JPanel implements ActionListener


{
private JTextField TxtData;
private JCheckBox ChkItalic;
private JCheckBox ChkBold;
private JRadioButton RdbTime;
private JRadioButton RdbArial;
private JRadioButton RdbSerif;
private ButtonGroup BtgGrupo;

public CPanelEstado()
{
TxtData = new JTextField("Texto", 15);
ChkItalic = new JCheckBox("Italico");
ChkBold = new JCheckBox("Negrita");
RdbTime = new JRadioButton("Time New Roman", true);
RdbArial = new JRadioButton("Arial", false);
RdbSerif = new JRadioButton("Serif", false);

add(TxtData);
add(ChkItalic);
add(ChkBold);
add(RdbTime);
add(RdbArial);
add(RdbSerif);

BtgGrupo = new ButtonGroup();


BtgGrupo.add(RdbTime);
BtgGrupo.add(RdbArial);
BtgGrupo.add(RdbSerif);

ChkItalic.addActionListener(this);
ChkBold.addActionListener(this);
RdbTime.addActionListener(this);
RdbArial.addActionListener(this);
RdbSerif.addActionListener(this);
}
public void actionPerformed(ActionEvent evt)
{
Object oOrigen = evt.getSource();
Font FntFuente = TxtData.getFont();

Ing. Juan Antonio Flores Moroco 4


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

String sFuente = FntFuente.getName();


int iBold = Font.PLAIN;
int iItalic = Font.PLAIN;

if(ChkItalic.isSelected())
iItalic = Font.ITALIC;
else
iItalic = Font.PLAIN;

if(ChkBold.isSelected())
iBold = Font.BOLD;
else
iBold = Font.PLAIN;

if(oOrigen == RdbTime)
sFuente = "TimeNewRoman";
else if(oOrigen == RdbArial)
sFuente = "Arial";
else if(oOrigen == RdbSerif)
sFuente = "Serif";

TxtData.setFont(new Font(sFuente, iItalic + iBold, 12));


}
}
public class CBotonEstado extends JFrame
{
public CBotonEstado()
{
addWindowListener( new WindowAdapter()
{ public void windowClosing(WindowEvent e) { System.exit(0); } });

int iWidth = 400, iHeight = 300;


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

setTitle("Botones de Estado");
setResizable(false);

Container oCon = getContentPane();


oCon.add(new CPanelEstado());
}
public static void main(String[] args)
{
CBotonEstado oEst = new CBotonEstado();
oEst.setVisible(true);
}
}

Resultado:

Ing. Juan Antonio Flores Moroco 5


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

1.4 CAMBIANDO BORDES

A continuacin desarrollaremos una Aplicacin que maneja bordes.

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

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


package pbordes;

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

public class CBordes extends JFrame implements ActionListener


{
private JButton BtnEtched;
private JButton BtnEmpty;
private JButton BtnLine;
private JButton BtnMatte;
private JButton BtnLoweredBevel;
private JButton BtnRaisedBevel;
private JButton BtnCompound;
private JCheckBox ChkTitulo;
private Border BrdCentro = null;

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

int iWidth = 700, iHeight = 200;


Toolkit oTk = Toolkit.getDefaultToolkit();
Dimension oDi = oTk.getScreenSize();
setSize(iWidth, iHeight);
setLocation((oDi.width / 2) - (iWidth / 2), (oDi.height / 2) - (iHeight / 2));
setTitle("Botones de Estado");
setResizable(false);

//-----------------------------------
JPanel PnlBajo = new JPanel();

BtnEtched = new JButton("Etched");


BtnEmpty = new JButton("Empty");
BtnLine = new JButton("Line");
BtnMatte = new JButton("Matte");
BtnLoweredBevel = new JButton("LoweredBevel");
BtnRaisedBevel = new JButton("RaisedBevel");
BtnCompound = new JButton("Compound");
ChkTitulo = new JCheckBox("Titulo");

PnlBajo.add(BtnEtched);
PnlBajo.add(BtnEmpty);
PnlBajo.add(BtnLine);
PnlBajo.add(BtnMatte);
PnlBajo.add(BtnLoweredBevel);
PnlBajo.add(BtnRaisedBevel);
PnlBajo.add(BtnCompound);
PnlBajo.add(ChkTitulo);

Border borde = BorderFactory.createEtchedBorder();


Border BrdBajo = BorderFactory.createTitledBorder(borde, "Tipos de Borde");
PnlBajo.setBorder(BrdBajo);

Ing. Juan Antonio Flores Moroco 6


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

Container oCon = getContentPane();


oCon.setLayout(new BorderLayout());
oCon.add(PnlBajo, "South");

BtnEtched.addActionListener(this);
BtnEmpty.addActionListener(this);
BtnLine.addActionListener(this);
BtnMatte.addActionListener(this);
BtnLoweredBevel.addActionListener(this);
BtnRaisedBevel.addActionListener(this);
BtnCompound.addActionListener(this);
ChkTitulo.addActionListener(this);
}
public void actionPerformed(ActionEvent evt)
{
Object oOrigen = evt.getSource();
JPanel PnlCentro = new JPanel();

if(oOrigen == BtnEtched)
BrdCentro = BorderFactory.createEtchedBorder();
else if(oOrigen == BtnEmpty)
BrdCentro = BorderFactory.createEmptyBorder();
else if(oOrigen == BtnLine)
BrdCentro = BorderFactory.createLineBorder(Color.RED);
else if(oOrigen == BtnMatte)
BrdCentro = BorderFactory.createMatteBorder(3, 3, 3, 3, Color.GREEN);
else if(oOrigen == BtnLoweredBevel)
BrdCentro = BorderFactory.createLoweredBevelBorder();
else if(oOrigen == BtnRaisedBevel)
BrdCentro = BorderFactory.createRaisedBevelBorder();
else if(oOrigen == BtnCompound)
BrdCentro = BorderFactory.createCompoundBorder(BorderFactory.createEtchedBorder(),
BorderFactory.createMatteBorder(3, 3, 3, 3, Color.GREEN));

if(ChkTitulo.isSelected())
{
Border BrdTitulo = BorderFactory.createTitledBorder(BrdCentro, "Titulito");
PnlCentro.setBorder(BrdTitulo);
}
else
PnlCentro.setBorder(BrdCentro);

Container oCon = getContentPane();


oCon.add(PnlCentro, "Center");
validate();
}
public static void main(String[] args)
{
CBordes FrmMain = new CBordes();
FrmMain.setVisible(true);
}
}
Resultado:

Ing. Juan Antonio Flores Moroco 7

Potrebbero piacerti anche