You are on page 1of 7

/*x.

java*/

package swing;

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

public class x extends JFrame implements ActionListener{

public JMenuBar mb;


public JMenu m_figura,m_color,m_numero;
public JMenuItem mi1,mi2,mi3,mi4,mi5,mi6,mi7,mi8,mi9;
public int figura,color = 1,numero=1,ciclo=1;
public int o1 = 50, o2 = 130, o3 = 65, o4 = 100; // Circulo
public int r1 = 40, r2 = 100, r3 = 35, r4 = 33;// Rectangulo
public int l1 = 20, l2 = 20, l3 = 65, l4 = 63;// Linea

// establecer cadena de barra de titulo y dimensiones de la ventana


public x()
{
super( "EJERCICIO FIGURAS SENA" );

setLayout(new GridLayout(1,1,5,5));
mb=new JMenuBar();
setJMenuBar(mb);

m_figura=new JMenu("Figura");
m_color=new JMenu("Color");
m_numero=new JMenu("Numero");

mb.add(m_figura);
mb.add(m_color);
mb.add(m_numero);

mi1=new JMenuItem("Circulo");
mi1.addActionListener(this);
m_figura.add(mi1);
mi2=new JMenuItem("Cuadrado");
mi2.addActionListener(this);
m_figura.add(mi2);
mi3=new JMenuItem("Linea");
mi3.addActionListener(this);
m_figura.add(mi3);

mi4=new JMenuItem("Verde");
mi4.addActionListener(this);
m_color.add(mi4);
mi5=new JMenuItem("Azul");
mi5.addActionListener(this);
m_color.add(mi5);
mi6=new JMenuItem("Rojo");
mi6.addActionListener(this);
m_color.add(mi6);

mi7=new JMenuItem("Uno");
mi7.addActionListener(this);
m_numero.add(mi7);
mi8=new JMenuItem("Dos");
mi8.addActionListener(this);
m_numero.add(mi8);
mi9=new JMenuItem("Tres");
mi9.addActionListener(this);
m_numero.add(mi9);

setSize( 500, 500 );


setVisible( true );
} //Cierre x

public void actionPerformed(ActionEvent e) {


Container f=this.getContentPane();
Object source = e.getSource();
// MENU FIGURA
if (e.getSource() == mi1) {
figura = 1;
repaint();
}
if (e.getSource() == mi2) {
figura = 2;
repaint();
}
if (e.getSource() == mi3) {
figura = 3;
repaint();
}
// MENU COLOR
if (e.getSource() == mi4) {
color = 1;
repaint();
}
if (e.getSource() == mi5) {
color = 2;
repaint();
}
if (e.getSource() == mi6) {
color = 3;
repaint();
}
// MENU NUMERO2
if (e.getSource() == mi7) {
numero = 1;
repaint();
}
if (e.getSource() == mi8) {
numero = 2;
repaint();
}
if (e.getSource() == mi9) {
numero = 3;
repaint();
}

}// Cierre ActionPerformed

public void paint( Graphics g )


{
super.paint( g ); // llamar al metodo paint de la superclase

Graphics2D g2d = ( Graphics2D ) g; // convertir g a Graphics2D

g2d.setStroke( new BasicStroke( 3.0f ) ); //ancho de las lineas

if (figura == 1) {
// Dibujar Circulo

if (color == 1){
//Pintar Figura
g2d.setPaint(Color.green);
}else
if (color == 2){
//Pintar Figura
g2d.setPaint(Color.blue);
}else
if (color == 3){
//Pintar Figura
g2d.setPaint(Color.red);
}
for (ciclo = 1; ciclo <= numero ; ciclo++) {
g2d.drawOval(o1+ (ciclo * 100),
o2+ (ciclo * 10),
o3+ (ciclo * 10),
o4+ (ciclo * 10));
}// Cierre for

}// Cierre if Figura 1

if (figura == 2) {
//Dibujar rectangulo
if (color == 1){
////Pintar Figura
g2d.setPaint(Color.green);
}else
if (color == 2){
////Pintar Figura
g2d.setPaint(Color.blue);
}else
if (color == 3){
////Pintar Figura
g2d.setPaint(Color.red);
}
for (ciclo = 1; ciclo <= numero ; ciclo++) {
g2d.draw( new Rectangle2D.Double(
r1+ (ciclo * 100),
r2+ (ciclo * 10),
r3+ (ciclo * 10),
r4+ (ciclo * 10)));
}
}// Cierre if figura 2

if (figura == 3) {
//Dibujar linea diagonal 2D

if (color == 1){
//Dibujar elipse 2D
g2d.setPaint(Color.green);
}else
if (color == 2){
//Dibujar elipse 2D
g2d.setPaint(Color.blue);
}else
if (color == 3){
//Dibujar elipse 2D
g2d.setPaint(Color.red);
}

for (ciclo = 1; ciclo <= numero ; ciclo++) {


g2d.drawLine(l1+ (ciclo * 100),
l2+ (ciclo * 100),
l3+ (ciclo * 100),
l4+ (ciclo * 100));
}// Cierre for
}// Cierre if figura 3
} // Cierre Paint

public static void main( String args[] )


{
x aplicacion = new x();
aplicacion.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
}// Cierre Void

}// Cierre class x

/*VentanaCalculadora.java*/

package swing;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.WindowConstants;
import javax.swing.border.EmptyBorder;
public class VentanaCalculadora extends JFrame {

JTextField pantalla;
double resultado;
String operacion;
JPanel panelNumeros, panelOperaciones;
boolean nuevaOperacion = true;

public VentanaCalculadora() {
super("Calculadora");
setSize(250, 300);
setTitle("Calculadora");

JPanel panel = (JPanel) this.getContentPane();


panel.setLayout(new BorderLayout());

pantalla = new JTextField("0", 20);


pantalla.setBorder(new EmptyBorder(4, 4, 4, 4));
pantalla.setFont(new Font("Arial", Font.BOLD, 25));
pantalla.setHorizontalAlignment(JTextField.RIGHT);
pantalla.setEditable(false);
pantalla.setBackground(Color.WHITE);
panel.add("North", pantalla);

panelNumeros = new JPanel();


panelNumeros.setLayout(new GridLayout(4, 3));
panelNumeros.setBorder(new EmptyBorder(4, 4, 4, 4));

for (int n = 9; n >= 0; n--) {


nuevoBotonNumerico("" + n);
}

nuevoBotonNumerico(".");

panel.add("Center", panelNumeros);

panelOperaciones = new JPanel();


panelOperaciones.setLayout(new GridLayout(6, 1));
panelOperaciones.setBorder(new EmptyBorder(4, 4, 4, 4));

nuevoBotonOperacion("+");
nuevoBotonOperacion("-");
nuevoBotonOperacion("*");
nuevoBotonOperacion("/");
nuevoBotonOperacion("=");
nuevoBotonOperacion("CE");
panel.add("East", panelOperaciones);

private void nuevoBotonNumerico(String digito) {


JButton btn = new JButton();
btn.setText(digito);
btn.addMouseListener(new MouseAdapter() {

@Override
public void mouseReleased(MouseEvent evt) {
JButton btn = (JButton) evt.getSource();
numeroPulsado(btn.getText());
}
});

panelNumeros.add(btn);
}

private void nuevoBotonOperacion(String operacion) {


JButton btn = new JButton(operacion);
btn.setForeground(Color.BLACK);

btn.addMouseListener(new MouseAdapter() {

@Override
public void mouseReleased(MouseEvent evt) {
JButton btn = (JButton) evt.getSource();
operacionPulsado(btn.getText());
}
});

panelOperaciones.add(btn);
}//cierre nuevoBotonOperacion

private void numeroPulsado(String digito) {


if (pantalla.getText().equals("0") || nuevaOperacion) {
pantalla.setText(digito);
} else {
pantalla.setText(pantalla.getText() + digito);
}
nuevaOperacion = false;
}//cierre numeroPulsado

private void operacionPulsado(String tecla) {


if (tecla.equals("=")) {
calcularResultado();
} else if (tecla.equals("CE")) {
resultado = 0;
pantalla.setText("");
nuevaOperacion = true;
} else {
operacion = tecla;
if ((resultado > 0) && !nuevaOperacion) {
calcularResultado();
} else {
resultado = new Double(pantalla.getText());
}
}
nuevaOperacion = true;
}//Cierre Operacion pulsado

private void calcularResultado() {


if (operacion.equals("+")) {
resultado += new Double(pantalla.getText());
} else if (operacion.equals("-")) {
resultado -= new Double(pantalla.getText());
} else if (operacion.equals("/")) {
resultado /= new Double(pantalla.getText());
} else if (operacion.equals("*")) {
resultado *= new Double(pantalla.getText());
}
pantalla.setText("" + resultado);
operacion = "";
}// Cierre calcular Resultado

public static void main(String[] args) {


VentanaCalculadora calculadora = new VentanaCalculadora();
calculadora.setVisible(true);
}
}//Cierre Clase

You might also like