Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resultado:
CÓDIGO
/**
* Simple Calculator
*
* Developed by Marioly Garza
*
*/
package calculadora;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public Calculadora() {
setTitle("Calculadora");
setSize(200, 200);
Pantalla();
Teclado();
}
panel.add(pantalla);
add("North", panel);
}
addBoton("7", Color.blue);
addBoton("8", Color.blue);
addBoton("9", Color.blue);
addBoton("/", Color.red);
addBoton("C", Color.red);
addBoton("4", Color.blue);
addBoton("5", Color.blue);
addBoton("6", Color.blue);
addBoton("*", Color.red);
addBoton("sqrt", Color.red);
addBoton("1", Color.blue);
addBoton("2", Color.blue);
addBoton("3", Color.blue);
addBoton("-", Color.red);
addBoton("AC", Color.red);
addBoton("0", Color.blue);
addBoton("+/-", Color.red);
addBoton(".", Color.red);
addBoton("+", Color.red);
addBoton("=", Color.red);
add("Center", panel2);
}
b.setForeground(color);
panel2.add(b);
float valor = 0;
try {
valor = new Float(s).floatValue();
} catch (Exception e) {
if (!digit.equals("C")) return;
}
if (nuevo) {
nuevo = false;
pantalla.setText(digit);
} else {
pantalla.setText(s + digit);
}
if (nuevo) {
nuevo = false;
pantalla.setText("0.");
} else {
pantalla.setText(s + digit);
}
valor = (float)Math.sqrt(valor);
pantalla.setText(String.valueOf(valor));
nuevo = true;
valor = -valor;
pantalla.setText(String.valueOf(valor));
nuevo = true;
resultado_total = 0;
pantalla.setText("0");
ultimo = "=";
nuevo = true;
} else {
char c = ultimo.charAt(0);
switch (c) {
case '=': resultado_total = valor; break;
case '+': resultado_total += valor; break;
case '-': resultado_total -= valor; break;
case '*': resultado_total *= valor; break;
case '/': resultado_total /= valor; break;
}
ultimo = digit;
nuevo = true;
pantalla.setText(String.valueOf(resultado_total));
}
}
public static void main(String[] args) {
Calculadora cal = new Calculadora();
cal.show();
}
}
2,755
MENSAJES
Código:
public class CalculadoraApplet extends JApplet implements
ActionIListener {
public CalculadoraApplet() {
inicializarApplet();
}
boton1.addActionListener(this);
boton2.addActionListener(this);
}
25 public static void main(String[] args) {
26 // TODO code application logic here
27 VentanaCalculadora calculadora = new VentanaCalculadora();
28 calculadora.setVisible(true);
29 }
30
31 }
VentanaCalculadora.java
001 /*
002 * Interfaz para nuestra calculadora sencilla
003 */
004 package calculadora;
005
006 import java.awt.*;
007 import java.awt.event.MouseAdapter;
008 import java.awt.event.MouseEvent;
009
010 import javax.swing.*;
011 import javax.swing.border.EmptyBorder;
012
013 /**
014 *
015 * @author: $Author: franchux $
016 * @version: $Rev: 75 $
* @date: $Date: 2009-04-14 00:21:18 +0200 (mar 14 de abr de 2009)
017
$
018 * $Id: VentanaCalculadora.java 75 2009-04-13 22:21:18Z franchux $
019 */
020 public class VentanaCalculadora extends JFrame {
021
022 /** numero tecleado */
023 JTextField pantalla;
024
/** guarda el resultado de la operacion anterior o el número
025
tecleado */
026 double resultado;
027
028 /** para guardar la operacion a realizar */
029 String operacion;
030
031 /** Los paneles donde colocaremos los botones */
032 JPanel panelNumeros, panelOperaciones;
033
034 /** Indica si estamos iniciando o no una operación */
035 boolean nuevaOperacion = true;
036
037 /**
* Constructor. Crea los botones y componentes de la
038
calculadora
039 */
040 public VentanaCalculadora() {
041 super();
042 setSize(250, 300);
043 setTitle("Calculadora Simple");
044 setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
045 setResizable(false);
046
047 // Vamos a dibujar sobre el panel
048 JPanel panel = (JPanel) this.getContentPane();
049 panel.setLayout(new BorderLayout());
050
087 /**
* Crea un boton del teclado numérico y enlaza sus eventos con
088
el listener correspondiente
089 *
090 * @param digito boton a crear
091 */
092 private void nuevoBotonNumerico(String digito) {
093 JButton btn = new JButton();
094 btn.setText(digito);
095 btn.addMouseListener(
096 new MouseAdapter() {
097
098 @Override
099 public void mouseReleased(MouseEvent evt) {
JButton btn = (JButton)
100
evt.getSource();
101 numeroPulsado(btn.getText());
102 }
103 });
104
105 panelNumeros.add(btn);
106
107 }
108
109 /**
110 * Crea un botón de operacion y lo enlaza con sus eventos.
111 *
112 * @param operacion
113 */
114 private void nuevoBotonOperacion(String operacion) {
115 JButton btn = new JButton(operacion);
116 btn.setForeground(Color.RED);
117
118 btn.addMouseListener(
119 new MouseAdapter() {
120
121 @Override
122 public void mouseReleased(MouseEvent evt) {
123 JButton btn = (JButton) evt.getSource();
124 operacionPulsado(btn.getText());
125 }
126 });
127
128 panelOperaciones.add(btn);
129 }
130
131 /**
132 * Gestiona las pulsaciones de teclas numéricas
133 *
134 * @param digito tecla pulsada
135 */
136 private void numeroPulsado(String digito) {
137 if (pantalla.getText().equals("0") || nuevaOperacion) {
138 pantalla.setText(digito);
145 /**
146 * Gestiona el gestiona las pulsaciones de teclas de operación
147 * @param tecla
148 */
149 private void operacionPulsado(String tecla) {
150 if (tecla.equals("=")) {
151 calcularResultado();
152 } else if(tecla.equals("CE")) {
153 resultado = 0;
154 pantalla.setText("");
155 nuevaOperacion = true;
156 } else {
171 private void calcularResultado() {
172 if (operacion.equals("+")) {
174 } else if (operacion.equals("-")) {
176 } else if (operacion.equals("/")) {
178 } else if (operacion.equals("*")) {
180 }
181
182 pantalla.setText("" + resultado);
183 operacion = "";
184 }
185 }
/**
* Write a description of class calculadora here.
*
* @author javiergal
* @version (30/06/2005)
*/
//librerias
import javax.swing.*;
import java.awt.event.*;//para manejar eventos
import java.awt.*;
//inicio clase
class frame extends JFrame{
//el constuctor
public frame(){
//Este es uno de los métodos que nuestra clase frame ha
//heredado de JFrame. Pone un título a la ventana
setTitle("Calculadora");
//Igual que el anterior, pero le esta vez le da un tamaño
setSize(300,500);
//Le indicamos al frame quien será su manejador de eventos de
//ventana: un objeto de tipo manejador que creamos en esta
misma línea
addWindowListener (new manejador());
//Le pido al frame su objeto contenedor
Container container = getContentPane();
//Creo un objeto de tipo JPanel pantalla que contentra el
visor
JPanel pantalla = new JPanel();
//creo un objeto de tipo JPanel teclado que contendra los
botones
JPanel teclado = new JPanel();
//creo un objeto de tipo JTextField visor que mostrará los
números y las operaciones
JTextField visor = new JTextField(20);
//ubicacion segun se creen los botones
FlowLayout fl = new FlowLayout(FlowLayout.LEFT, 5,50);
//agregó el FlowLayout al teclado
teclado.setLayout(fl);
}
}