jueves, 19 de enero de 2012

Aprendiendo a Multiplicar

Aprende a multiplicar, este programa genera Multiplicaciones aleatorias, si escribes mal la respuesta te marca un Error, si la escribes bien tendrás un Acierto.


import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.*;
import java.awt.event.*;
import java.net.URL;
import javax.swing.*;

public class Multiplica extends JFrame {
static URL ruta;
static AudioClip musica;
    
int posx;
JLabel lblTitulo=new JLabel("Aprendiendo a Multiplicar");
JLabel lblNumero1=new JLabel("10");
JLabel lblNumero2=new JLabel("10");
JLabel lblSigno1=new JLabel("*");
JLabel lblSigno2=new JLabel("=");
JTextField txtResultado=new JTextField();
ImageIcon im=new ImageIcon("Feliz.jpg");
ImageIcon im2=new ImageIcon("Triste.jpg");
JLabel lblFeliz=new JLabel(im);
JLabel lblTriste=new JLabel(im2);
JLabel lblAciertos=new JLabel("Aciertos");
JLabel lblErrores=new JLabel("Errores");
JLabel lblNumAciert=new JLabel("0");
JLabel lblNumError=new JLabel ("0");
Hilo m;
public Multiplica(){
Panel p=new Panel();
m=new Hilo();
m.start();
setTitle("Aprendiendo a Multiplicar");
setSize(500,500);
p.setLayout(null);
p.add(lblTitulo);
p.add(lblNumero1);
p.add(lblNumero2);
p.add(lblSigno1);
p.add(lblSigno2);
p.add(txtResultado);
p.add(lblFeliz);
p.add(lblTriste);
p.add(lblAciertos);
p.add(lblErrores);
p.add(lblNumAciert);
p.add(lblNumError);
lblTitulo.setFont(new Font("Arial", Font.BOLD, 20));
lblTitulo.setBounds(posx,10,400,30);
lblNumero1.setFont(new Font("Arial", Font.BOLD, 20));
lblNumero1.setBounds(10,50,30,30);
lblSigno1.setFont(new Font("Arial", Font.BOLD, 20));
lblSigno1.setBounds(50,50,30,30);
lblNumero2.setFont(new Font("Arial", Font.BOLD, 20));
lblNumero2.setBounds(90,50,30,30);
lblSigno2.setFont(new Font("Arial", Font.BOLD, 20));
lblSigno2.setBounds(140,50,30,30);
txtResultado.setFont(new Font("Arial", Font.BOLD, 20));
txtResultado.setBounds(190,50,30,30);
lblFeliz.setFont(new Font("Arial", Font.BOLD, 20));
lblFeliz.setBounds(10,150,100,100);
lblTriste.setFont(new Font("Arial", Font.BOLD, 20));
lblTriste.setBounds(10,270,100,100);
lblAciertos.setFont(new Font("Arial", Font.BOLD, 20));
lblAciertos.setBounds(150,150,100,100);
lblErrores.setFont(new Font("Arial", Font.BOLD, 20));
lblErrores.setBounds(150,270,100,100);
lblNumAciert.setFont(new Font("Arial", Font.BOLD, 20));
lblNumAciert.setBounds(280,175,50,50);
lblNumError.setFont(new Font("Arial", Font.BOLD, 20));
lblNumError.setBounds(280,300,50,50);
Container c=getContentPane();
c.add(p);
txtResultado.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent r){
int x1=Integer.parseInt(lblNumero1.getText());
int x2=Integer.parseInt(lblNumero2.getText());
int resultado=Integer.parseInt(txtResultado.getText());
int var =x2*x1;
if(resultado==var){
lblNumAciert.setText(String.valueOf(Integer.parseInt(lblNumAciert.getText())+1));
lblNumero1.setText(String.valueOf(Aleatorio()));
   lblNumero2.setText(String.valueOf(Aleatorio()));
txtResultado.requestFocus();
txtResultado.setText("");
try{
ruta=new URL("file:Destello.wav");
musica = Applet.newAudioClip(ruta);
musica.play();
}
catch(Exception ex){
System.out.println("Error"+ex);
}
}
else {
lblNumError.setText(String.valueOf(Integer.parseInt(lblNumError.getText())+1));
   lblNumero1.setText(String.valueOf(Aleatorio()));
   lblNumero2.setText(String.valueOf(Aleatorio()));
txtResultado.requestFocus();
txtResultado.setText("");
try{
ruta=new URL("file:Lengua.wav");
musica = Applet.newAudioClip(ruta);
musica.play();
}
catch(Exception ex){
System.out.println("Error"+ex);
}
}
} });
}
class Hilo extends Thread{
public void run(){
try{
while(true){
lblTitulo.setVisible(true);
Thread.sleep(500);
lblTitulo.setVisible(false);
Thread.sleep(500);
posx=posx-20;
lblTitulo.setBounds(posx,10,400,30);
if(posx<0){posx=400;}
}
}catch(Exception er){}
}
}

public int Aleatorio(){
return((int)(Math.random()*11));
}
}
//Esto va en otra clase

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

public class Panel extends JPanel {
public void paintComponent(Graphics g){
Dimension tamano=getSize();
ImageIcon imagenFondo=new ImageIcon("Fondo.jpg");
g.drawImage(imagenFondo.getImage(),0,0,tamano.width,tamano.height,null);
setOpaque(false);
super.paintComponent(g);
}
}

//Esto va en otra clase

public class mainMultiplica {

public static void main(String[] args) {
new Multiplica().show();

}

}

No hay comentarios:

Publicar un comentario