Vous êtes sur la page 1sur 27

APLICACIN PARA REALIZAR

OPERACIONES ARITMETICAS
Tpicos Avanzados Programacin

Ing. Mario Jimnez Vzquez


Alumno: Hugo Enrique Lozano Reyes
Botones que se utilizan en una aplicacin JDK

Component es una clase abstracta que representa todo lo que tiene una posicin, un tamao,
puede ser pintado en pantalla y puede recibir eventos.

No tiene constructores pblicos, ni puede ser instanciada. Sin embargo, desde el JDK 1.1 puede
ser extendida para proporcionar una nueva caracterstica incorporada a Java, conocida como
componentes Lightweight.

Los Objetos derivados de la clase Component que se incluyen en el Abstract Window Toolkit son
los que aparecen a continuacin:

Button
Canvas
Checkbox
Choice
Container
o Panel
o Window
o Dialog
o Frame
Label
List
Scrollbar
TextComponent
o TextArea
o TextField

Sobre estos Componentes se podran hacer ms agrupaciones y quiz la ms significativa fuese


la que diferencie a los Componentes segn el tipo de entrada. As habra Componentes con
entrada de tipo no-textual como los botones de pulsacin (Button), las listas (List), botones de
marcacin (Checkbox), botones de seleccin (Choice) y botones de comprobacin
(CheckboxGroup); Componentes de entrada y salida textual como los campos de texto
(TextField), las reas de texto (TextArea) y las etiquetas (Label); y, otros Componentes sin
acomodo fijo en ningn lado, en donde se encontraran Componentes como las barras de
desplazamiento (Scrollbar), zonas de dibujo (Canvas) e incluso los Contenedores
(Panel, Window, Dialog y Frame), que tambin pueden considerarse como Componentes.
Botones de Pulsacin

Los botones de pulsacin (Button), son los que se han utilizado fundamentalmente en los
ejemplos de este Tutorial, aunque nunca se han considerado sus atributos especficamente.

La clase Button es una clase que produce un componente de tipo botn con un ttulo. El
constructor ms utilizado es el que permite pasarle como parmetro una cadena, que ser la que
aparezca como ttulo e identificador del botn en el interfaz de usuario. No dispone de campos o
variables de instancia y pone al alcance del programador una serie de mtodos entre los que
destacan por su utilidad los siguientes:

addActionListener() Aade un receptor de eventos de


tipo Action producidos por el botn
getLabel() Devuelve la etiqueta o ttulo del botn
removeActionListener() Elimina el receptor de eventos para que el
botn deje de realizar accin alguna
setLabel() Fija el ttulo o etiqueta visual del botn

Adems dispone de todos los mtodos heredados de las clases Component y Object.

ActionListener es uno de los eventos de tipo semntico. Un evento de tipo Action se produce
cuando el usuario pulsa sobre un objeto Button. Adems, un objeto Button puede generar
eventos de bajo nivel de tipo FocusListener, MouseListener o KeyListener, porque hereda los
mtodos de la clase Component que permiten instanciar y registrar receptores de eventos de
este tipo sobre objetos de tipo Button.

Botones de Seleccin

Los botones de seleccin (Choice) permiten el rpido acceso a una lista de elementos,
presentndose como ttulo el item que se encuentre seleccionado.

La clase Choice extiende la clase Component e implementa el interfaz ItemSelectable, que es


el interfaz que mantiene un conjunto de items en los que puede haber, o no, alguno seleccionado.
Adems, esta clase proporciona el mtodo addItemListener(), que aade un registro de eventos
item, que es muy importante a la hora de tratar los eventos que se producen sobre los objetos de
tipo Choice.

La clase Choice tambin dispone de cerca de una veintena de mtodos que permiten la
manipulacin de los items disponibles para la seleccin, cuya amplia documentacin el lector
puede consultar en el API del JDK.
El ejemplo que se ha implementado, java1302.java, para ilustrar el uso de los botones de
seleccin, coloca un objeto de tipo Choice sobre un objeto Frame y aade tres objetos de
tipo String al objetoChoice, fijando el segundo de ellos como preseleccionado a la hora de lanzar
el programa. La presentacin inicial de la aplicacin al ejecutarla es la que reproduce la imagen.

Se instancia y registra un objeto de tipo ItemListener sobre el objeto Choice para identificar y
presentar el objeto String que se elige cuando el usuario utiliza una seleccin. Cuando esto
ocurre, se captura un evento en el mtodo sobrescrito itemStateChanged() del
objeto ItemListener. El cdigo de este mtodo utiliza una llamada a getSelectedItem() para el
item que est marcado y presentar la cadena que le corresponde.

Tambin se instancia y registra un objeto receptor de eventos windowClosing() sobre


el Frame para concluir el programa cuando el usuario cierre la ventana.

import java.awt.*;
import java.awt.event.*;
import java.util.*;

public class java1302 {


public static void main( String args[] ) {
IHM ihm = new IHM();
}
}

// Clase del Interfaz Grfico que instancia los objetos


class IHM {
public IHM() {
// Instancia un objeto Choice y coloca objetos String sobre el
// para realizar las selecciones
Choice miChoice = new Choice();
miChoice.add( "Primer Choice" );
miChoice.add( "Segundo Choice" );
miChoice.add( "Tercer Choice" );

// Seleccionamos la cadena correspondiente a la tercera seleccin


// por defecto, al arrancar la aplicacin
miChoice.select( "Tercer Choice" );
// Instanciamos y registramos un objeto ItemListener sobre
// el objeto Choice
miChoice.addItemListener( new MiItemListener( miChoice ) );

// Colocamos el objetos Choice sobre el Frame para poder verlo


Frame miFrame = new Frame( "Tutorial de Java, AWT" );
miFrame.setLayout( new FlowLayout() );
miFrame.add( miChoice );
miFrame.setSize( 250,150 );
miFrame.setVisible( true );

// Instanciamos y registramos un objeto receptor de los eventos de


// la ventana, para recoger el evento de cierre del Frame y
// concluir la ejecucion de la aplicacion al recibirlo
miFrame.addWindowListener( new Conclusion() );
}
}

// Clase para recibir los eventos ItemListener generados por el objeto


// Choice de la aplicacin
class MiItemListener implements ItemListener{
Choice oChoice;

MiItemListener( Choice choice ) {


// Guardamos una referencia al objeto Choice
oChoice = choice;
}

// Sobreescribimos el metodo itemStateChanged() del interfaz del


// ItemListener
public void itemStateChanged( ItemEvent evt ) {
System.out.println( oChoice.getSelectedItem() );
}
}

// Concluye la ejecucin de la aplicacin cuando el usuario cierra la


// ventana, porque se genera un evento windowClosing
class Conclusion extends WindowAdapter {
public void windowClosing( WindowEvent evt ) {
System.exit( 0 );
}
}
Los trozos de cdigo que merecen un repaso en el programa anterior son los que se ven a
continuacin. Empezando por las sentencias siguientes, que son las tpicas usadas en la
instanciacin del objeto Choice y la incorporacin de objetos String a ese objeto Choice.

Choice miChoice = new Choice();


miChoice.add( "Primer Choice" );
...

La lnea de cdigo siguiente hace que el objeto Tercer Choice de tipo String, sea el que se
encuentre visible al lanzar la aplicacin.

miChoice.select( "Tercer Choice" );

Y la sentencia que se reproduce ahora es la que instancia y registra un objeto de


tipo ItemListenersobre el objeto Choice.

miChoice.addItemListener( new MiItemListener( miChoice ) );

A esta sentencia le sigue el cdigo que crea el objeto Frame, coloca el objeto Choice en l, etc.
Ya se han visto varias veces sentencias de este tipo, as que no merece la pena volver sobre
ellas. As que ya solamente queda como cdigo interesante en el programa el
mtodo itemStateChanged() que est sobrescrito, del objeto ItemListener.

public void itemStateChanged( ItemEvent evt ) {


System.out.println( oChoice.getSelectedItem() );
}

Eventos de este tipo se producen siempre que el usuario realiza una seleccin (abre la lista de
opciones y pulsa el botn del ratn con el cursor sobre una de ellas). Y, como se puede ver, el
mtodo getSelectedItem() es el encargado de obtener la representacin en cadena del item que
estaba seleccionado en ese momento.

Botones de Comprobacin

La clase CheckBox extiende la clase Component e implementa el interfaz ItemSelectable, que


es el interfaz que contiene un conjunto de items entre los que puede haber o no alguno
seleccionado.

Los botones de comprobacin (Checkbox) se pueden agrupar para formar un interfaz de botn
de radio (CheckboxGroup), que son agrupaciones de botones de comprobacin de exclusin
mltiple, es decir, en las que siempre hay un nico botn activo.

La programacin de objetos Checkbox puede ser simple o complicada, dependiendo de lo que


se intente conseguir. La forma ms simple para procesar objetos Checkbox es colocarlos en
un CheckboxGroup, ignorar todos los eventos que se generen cuando el usuario selecciona
botones individualmente y luego, procesar slo el evento de tipo Action cuando el usuario fije su
seleccin y pulse un botn de confirmacin. Hay gran cantidad de programas, fundamentalmente
para Windows, que estn diseados en base a este funcionamiento.

La otra forma, ms compleja, para procesar informacin de objetos Checkbox es responder a los
diferentes tipos de eventos que se generan cuando el usuario selecciona
objetos Checkbox distintos. Actualmente, no es demasiado complicado responder a estos
eventos, porque se pueden instanciar objetos Listener y registrarlos sobre los
objetos Checkbox, y eso no es difcil. La parte compleja es la implementacin de la lgica
necesaria para dar sentido a las acciones del usuario, especialmente cuando ese usuario no tiene
clara la seleccin que va a realizar y cambia continuamente de opinin.

El ejemplo que sigue, java1303.java, utiliza la solucin simple, permitiendo que el usuario cambie
de opcin cuntas veces quiera y tome una decisin final pulsando sobre el botn "Aceptar". Se
colocan cuatro objetos Checkbox, definidos sobre un objeto CheckboxGroup, y un
objeto Button sobre un objeto Frame. La apariencia de estos elementos en pantalla es la que
muestra la figura.

Se instancia y registra un objeto de tipo ActionListener sobre el objeto Button. La accin de


seleccionar y deseleccionar un objeto Checkbox es controlada automticamente por el sistema,
al formar parte de un CheckboxGroup. Cada vez que se pulse el botn, se generar un evento
que al ser procesado por el mtodo sobrescrito actionPerformed(), determina y presenta en
pantalla la identificacin del botn de comprobacin que est seleccionado. En la ventana se
muestra tanto la identificacin asignada por el sistema a los botones, como la etiqueta que es
asignada directamente por el programa, demostrando que tanto una como otra se pueden utilizar
para identificar el botn seleccionado.

import java.awt.*;
import java.awt.event.*;
import java.util.*;

public class java1303 {


public static void main( String args[] ) {
// Se instancia un objeto Interfaz Hombre-maquina
IHM ihm = new IHM();
}
}

// Clase del Interfaz grfico


class IHM {
// Constructor de la clase
public IHM() {
// Se crea un objeto CheckboxGroup
CheckboxGroup miCheckboxGroup = new CheckboxGroup();

// Ahora se crea un objeto Button y se registra un objeto


// ActionListener sobre l
Button miBoton = new Button( "Aceptar" );
miBoton.addActionListener( new MiActionListener( miCheckboxGroup ) );

// Se crea un objeto Frame para contener los objetos Checkbox y el


// objeto Button. Se fija un FlowLayout, se incorporan a el los
// objetos, se fija el tamao y se hace visible
Frame miFrame = new Frame( "Tutorial de Java, AWT" );
miFrame.setLayout( new FlowLayout() );
miFrame.add( new Checkbox( "A",true,miCheckboxGroup ) );
miFrame.add( new Checkbox( "B",false,miCheckboxGroup ) );
miFrame.add( new Checkbox( "C",false,miCheckboxGroup ) );
miFrame.add( new Checkbox( "D",false,miCheckboxGroup ) );
miFrame.add( miBoton );
miFrame.setSize( 250,100 );
miFrame.setVisible( true );

// Instanciamos y registramos un receptor para terminar la


// ejecucin de la aplicacin, cuando el usuario cierre la
// ventana
miFrame.addWindowListener( new Conclusion() );
}
}

// Esta clase indica la caja de seleccin que esta seleccionada


// cuando se pulsa el botn de Aceptar
class MiActionListener implements ActionListener {
CheckboxGroup oCheckBoxGroup;

MiActionListener( CheckboxGroup checkBGroup ) {


oCheckBoxGroup = checkBGroup;
}

public void actionPerformed( ActionEvent evt ) {


System.out.println(oCheckBoxGroup.getSelectedCheckbox().getName()+
" " + oCheckBoxGroup.getSelectedCheckbox().getLabel() );
}
}

// Concluye la aplicacin cuando el usuario cierra la ventana


class Conclusion extends WindowAdapter {
public void windowClosing( WindowEvent evt ) {
System.exit( 0 );
}
}

Hay cuatro trozos interesantes de cdigo en este ejemplo que merecen un poco de atencin
especial. El primero es la creacin del objeto CheckboxGroup, que posteriormente se utilizar
para agrupar a los cuatro objetos Checkbox en un solo grupo lgico.

CheckboxGroup miCheckboxGroup = new CheckboxGroup()

Luego se crean el botn "Aceptar" y el objeto ActionListener que se va a registrar sobre l.

Button miBoton = new Button( "Aceptar" );


miBoton.addActionListener( new MiActionListener( miCheckboxGroup ) );

Tambin est la instanciacin de los cuatro objetos Checkbox como parte del
grupo CheckboxGroup y su incorporacin al Frame.

miFrame.add( new Checkbox( "A",true,miCheckboxGroup ) );

Y, finalmente, es interesante el fragmento de cdigo en el que se sobrescribe el


mtodo actionPerformed() en el objeto ActionListener que extrae la identificacin del
objeto Checkbox, que se encuentra seleccionado. Aqu, el mtodo getSelectedCheckbox() es un
mtodo de la clase CheckboxGroup, que devuelve un objeto de tipo Checkbox. El mtodo
getLabel() es miembro de la clase Checkbox, y el mtodo getName() es miembro de la
clase Component, que es una superclase de Checkbox.

public void actionPerformed( ActionEvent evt ) {


System.out.println(oCheckBoxGroup.getSelectedCheckbox().getName()+
" " + oCheckBoxGroup.getSelectedCheckbox().getLabel() );
}

Listas

Las listas (List) aparecen en los interfaces de usuario para facilitar a los operadores la
manipulacin de muchos elementos. Se crean utilizando mtodos similares a los de los
botones Choice. La lista es visible todo el tiempo, utilizndose una barra de desplazamiento para
visualizar los elementos que no caben en el rea de la lista que aparece en la pantalla.

La clase List extiende la clase Component e implementa el interfaz ItemSelectable, que es el


interfaz que contiene un conjunto de items en los que puede haber, o no, alguno seleccionado.
Adems, soporta el mtodo addActionListener() que se utiliza para recoger los
eventos ActionEventque se produce cuando el usuario pica dos veces con el ratn sobre un
elemento de la lista.

En el ejemplo java1304.java, que ilustra el empleo de las listas, coloca un objeto List y un
objeto Button sobre un objeto Frame. Se aaden quince objetos String a la lista y se deja el
segundo como seleccionado inicialmente. La apariencia de la ventana as construida, al inicializar
el programa, es la que se reproduce en la imagen siguiente.

Sobre la lista se instancia y registra un objeto de tipo ActionListener, cuyo propsito es identificar
y presentar en pantalla el objeto String, que el usuario ha seleccionado haciendo un doble pique
sobre l. Cuando selecciona y luego pica dos veces con el ratn sobre un elemento de la lista,
un evento es capturado por el mtodo sobrescrito actionPerformed() del objeto ActionListener.
El cdigo de este mtodo utiliza la llamada a getSelectedItem() de la clase List, para identificar y
presentar la cadena que corresponde al elemento seleccionado. Sin embargo, si el usuario realiza
una doble pulsacin con el ratn sobre un elemento, mientras otro se encuentra seleccionado, el
mtodo getSelectedItem() devuelve null y no aparecer nada en pantalla.

Al objeto Frame tambin se le incorpora un Botn para permitir realizar seleccin mltiple en la
lista; de tal forma que cuando se pulsa, se captura el evento ActionListener que genera y
presenta en pantalla los elementos que se encuentren seleccionados en ese momento, incluso
aunque slo haya uno de ellos.

Tambin se instancia y registra un objeto receptor de eventos windowClosing() sobre el


objeto Frame, para concluir el programa cuando el usuario cierre la ventana.

import java.awt.*;
import java.awt.event.*;

public class java1304 {


public static void main( String args[] ) {
IHM ihm = new IHM();
}
}

class IHM {
public IHM(){
// Instancia un objeto List y coloca algunas cadenas sobre el,
// para poder realizar selecciones
List miLista = new List();

for( int i=0; i < 15; i++ )


miLista.add( "Elemento "+i );
// Activa la seleccion multiple
miLista.setMultipleMode( true );
// Presenta el elemento 1 al inicio
miLista.select( 1 );

// Instancia y registra un objeto ActionListener sobre el objeto


// List. Se produce un evento de tipo Action cuando el usuario
// pulsa dos veces sobre un elemento
miLista.addActionListener( new MiListaActionListener( miLista ) );

// Instancia un objeto Button para servicio de la seleccion


// multiple. Tambien instancia y registra un objeto ActionListener
// sobre el boton
Button miBoton = new Button( "Selecciona Multiples Items" );
miBoton.addActionListener( new miBotonActionListener( miLista ) );

// Coloca el objeto List y el objeto Button el el objeto Frame


Frame miFrame = new Frame( "Tutorial de Java, AWT" );
miFrame.setLayout( new FlowLayout() );
miFrame.add( miLista );
miFrame.add( miBoton );
miFrame.setSize( 250,150 );
miFrame.setVisible( true );

// Instancia y registra un objeto receptor de eventos de ventana


// para concluir la ejecucion del programa cuando el Frame se
// cierres por accion del usuario sobre el
miFrame.addWindowListener( new Conclusion() );
}
}

// Clase para recibir eventos de tipo ActionListener sobre el


// objeto List. Presenta en elemento seleccionado cuando el usuario
// pulsa dos veces sobre un item de lista cuando la seleccion es
// individual. Si el usuario pica dos veces sobre una seleccion
// multiple, se produce un evento pero el metodo getSelectedItem()
// de la clase List devuelve null y no se presenta nada en pantalla
class MiListaActionListener implements ActionListener {
List oLista;

MiListaActionListener( List lista ) {


// Salva una referencia al objeto List
oLista = lista;
}

// Sobreescribe el metodo actionPerformed() del interfaz


// ActionListener
public void actionPerformed( ActionEvent evt ) {
if( oLista.getSelectedItem() != null ) {
System.out.println( "Seleccion Simple de Elementos" );
System.out.println( " "+oLista.getSelectedItem() );
}
}
}

// Clase para recoger los eventos Action que se produzcan sobre el


// objeto Button. Presenta los elementos que haya seleccionados
// cuando el usuario lo pulsa, incluso aunque solamente haya uno
// marcado. Si no hubiese ninguno, so se presentaria nada en
// la pantalla
class miBotonActionListener implements ActionListener {
List oLista;

miBotonActionListener( List lista ) {


// Salva una referencia al objeto List
oLista = lista;
}

// Sobreescribe el metodo actionPerformed() del interfaz


// ActionListener
public void actionPerformed( ActionEvent evt ) {
String cadena[] = oLista.getSelectedItems();

if( cadena.length != 0 ) {
System.out.println( "Seleccion Multiple de Elementos" );
for( int i=0; i < cadena.length; i++ )
System.out.println( " "+cadena[i] );
}
}
}

class Conclusion extends WindowAdapter {


public void windowClosing( WindowEvent evt ) {
// Concluye el programa cuando se cierra la ventana
System.exit(0);
}
}
Si se realiza una revisin del cdigo del ejemplo, se encuentran algunos fragmentos que merecen
una reflexin. En el primero de ellos, que se reproduce en las lneas siguientes, se instancia un
objeto List y se rellenan quince cadenas. La lista se define como una seleccin mltiple y se fija
el segundo elemento como el inicialmente seleccionado en el momento del arranque del
programa.

// Instancia un objeto List y coloca algunas cadenas sobre el,


// para poder realizar selecciones
List miLista = new List();

for( int i=0; i < 15; i++ )


miLista.add( "Elemento "+i );
// Activa la seleccion multiple
miLista.setMultipleMode( true );
// Presenta el elemento 1 al inicio
miLista.select( 1 );

La sentencia siguiente es la que instancia y registra un objeto de tipo ActionListener sobre la


lista, para que responda al doble pique del ratn sobre uno de los elementos de ese lista.

miLista.addActionListener( new MiListaActionListener( miLista ) );

Luego, ya se encuentra el archivisto cdigo que instancia un objeto Button, que instancia y
registra un objeto ActionListener sobre ese botn, y que lo incorpora al Frame.

El siguiente fragmento de cdigo interesante se encuentra en la clase MiListaActionListener,


que est diseada para responder cuando el usuario pulse dos veces con el ratn sobre un item
seleccionado de la lista. Si el usuario pica dos veces sobre una nica seleccin de la lista, el
mtodo sobrescrito actionPerformed() identifica el elemento a travs de una llamada al
mtodo getSelectedItem() y lo presenta en pantalla. Sin embargo, si se pulsa dos veces, cuando
hay ms de un elemento seleccionado, el mtodo getSelectedItem() devuelve null y el elemento
ser ignorado.

public void actionPerformed( ActionEvent evt ) {


if( aLista.getSelectedItem() != null ) {
System.out.println( "Seleccion Simple de Elementos" );
System.out.println( " "+oLista.getSelectedItem() );
}
}

Las lneas de cdigo que se reproducen a continuacin, constituyen el cdigo que responde a un
evento Action producido sobre el objeto Button, y presenta en pantalla uno, o ms, elementos
seleccionados de la lista. En este caso, el mtodo empleado es getSelectedItem(), para crear un
array que mantenga todos los elementos que estn seleccionado en el momento de pulsar el
botn y que luego se presenta en pantalla.

public void actionPerformed( ActionEvent evt ) {


String cadena[] = oLista.getSelectedItems();

if( cadena.length != 0 ) {
System.out.println( "Seleccion Multiple de Elementos" );
for( int i=0; i < cadena.length; i++ )
System.out.println( " "+cadena[i] );
}
}
}
APLICACIN PARA REALIZAR
OPERACIONES ARITMETICAS
Tpicos Avanzados Programacin

Ing. Mario Jimnez Vzquez


Alumno: Hugo Enrique Lozano Reyes
CODIGO
package calculadora;
public class Calculadora
{
public static void main(String[] args)
{
}
}
public class Calculadora1 extends javax.swing.JFrame {
public Calculadora1() {
initComponents();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jPanel1 = new javax.swing.JPanel();


jPanel2 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jButton4 = new javax.swing.JButton();
jButton5 = new javax.swing.JButton();
jLabel3 = new javax.swing.JLabel();
Numero2 = new javax.swing.JTextField();
txtresultado = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
jButton6 = new javax.swing.JButton();
Numero1 = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();

javax.swing.GroupLayout jPanel1Layout = new


javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 100, Short.MAX_VALUE)
);
jPanel1Layout.setVerticalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 100, Short.MAX_VALUE)
);

javax.swing.GroupLayout jPanel2Layout = new


javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(

jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 100, Short.MAX_VALUE)
);
jPanel2Layout.setVerticalGroup(

jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 100, Short.MAX_VALUE)
);

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jLabel1.setText("Calculadora Basica");

jButton1.setText("Suma");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});

jButton2.setText("Resta");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});

jButton3.setText("Multiplicacion");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});

jButton4.setText("Division");
jButton4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton4ActionPerformed(evt);
}
});

jButton5.setText("Raz Cuadrada");
jButton5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton5ActionPerformed(evt);
}
});

jLabel3.setText("Teclee un numero");

txtresultado.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtresultadoActionPerformed(evt);
}
});

jLabel4.setText("Resultado");

jButton6.setText("Limpiar pantalla");
jButton6.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton6ActionPerformed(evt);
}
});

Numero1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Numero1ActionPerformed(evt);
}
});

jLabel2.setText("Teclee un numero");

javax.swing.GroupLayout layout = new


javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(layout.createSequentialGroup()

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(layout.createSequentialGroup()
.addGap(45, 45, 45)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addComponent(jButton2)
.addComponent(jButton1)
.addComponent(jButton4)))
.addGroup(layout.createSequentialGroup()
.addGap(31, 31, 31)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addComponent(jButton5)
.addComponent(jButton3))))
.addGap(31, 31, 31)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILI
NG)
.addGroup(layout.createSequentialGroup()

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILI
NG)
.addComponent(jLabel3)
.addComponent(jLabel4))

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG, false)
.addComponent(Numero2,
javax.swing.GroupLayout.DEFAULT_SIZE, 100, Short.MAX_VALUE)
.addComponent(txtresultado)))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel2)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(Numero1,
javax.swing.GroupLayout.PREFERRED_SIZE, 100,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jButton6)))
.addGroup(layout.createSequentialGroup()
.addGap(142, 142, 142)
.addComponent(jLabel1)))
.addContainerGap(24, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton1)
.addGap(14, 14, 14)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jButton2)
.addComponent(jLabel2)
.addComponent(Numero1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jButton3)
.addComponent(Numero2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel3))

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jButton4)
.addComponent(jLabel4)
.addComponent(txtresultado,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 6,
Short.MAX_VALUE)
.addComponent(jButton5)
.addGap(4, 4, 4)
.addComponent(jButton6)
.addContainerGap())
);

pack();
}// </editor-fold>

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {


double num1 = Double.parseDouble(Numero1.getText());
double num2 = Double.parseDouble(Numero2.getText());
txtresultado.setText(String.valueOf(num1 - num2));
}
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
double num1 = Double.parseDouble(Numero1.getText());
double num2 = Double.parseDouble(Numero2.getText());
txtresultado.setText(String.valueOf(num1 / num2));
}

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {


double num1 = Double.parseDouble(Numero1.getText());
txtresultado.setText(String.valueOf(Math.sqrt(num1)));
}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {


double num1 = Double.parseDouble(Numero1.getText());
double num2 = Double.parseDouble(Numero2.getText());
txtresultado.setText(String.valueOf(num1 + num2));
}

private void Numero1ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
}

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {


double num1 = Double.parseDouble(Numero1.getText());
double num2 = Double.parseDouble(Numero2.getText());
txtresultado.setText(String.valueOf(num1 * num2));
}
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
txtresultado.setText("");
Numero1.setText("");
Numero2.setText("");
}

private void txtresultadoActionPerformed(java.awt.event.ActionEvent evt) {

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code
(optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default
look and feel.
* For details see
http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(Calculadora1.class.getName()).log(java.util.logg
ing.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(Calculadora1.class.getName()).log(java.util.logg
ing.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(Calculadora1.class.getName()).log(java.util.logg
ing.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(Calculadora1.class.getName()).log(java.util.logg
ing.Level.SEVERE, null, ex);
}
//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Calculadora1().setVisible(true);
}
});
}

// Variables declaration - do not modify


private javax.swing.JTextField Numero1;
private javax.swing.JTextField Numero2;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton4;
private javax.swing.JButton jButton5;
private javax.swing.JButton jButton6;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JTextField txtresultado;
// End of variables declaration
}

Vous aimerez peut-être aussi