Réaliser un mini projet Calculatrice avec JAVA
Réaliser un mini projet Calculatrice avec JAVA.
Pour réaliser ce projet vous aurez besoin d'Installer:=>JAVA 7, 8, ou 9
=> De configurer JAVA apres l'avoir Installer
=> D'installer un IDE: BLUE J ou NetBEANS, je vous conseille BLUE J
La fenêtre de la Calculatrice sera composer de 6 lignes et 2 colonnes d'une barre d'action permettant d'effacer les entrées
Premièrement
Nous allons Importer un LIBRARIES:
import javax.swing.*;
import javax.swing.ImageIcon;
import java.util.*;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
Deuxièmement
Nous allons déclarer les variables :
//Declaration des variables, Variable Declaration
JPanel p1; // Panel Principale, Main Panel
JLabel l;
JButton A,B,C,D,E,F;
JTextField t,t1,t2;
JFrame f;
ImageIcon i;
Image e;
//Declaration des variables, Variable Déclaration
Troisièmement
Nous allons écrire le code servant a créer la barre de menu d'action:
// JMenu bar
JMenuBar JMenu=new JMenuBar ();
JMenu m= new JMenu ("Option");// JMenu
JMenu.add(m);
// Ajouter Item (Element dans le meno Class)
JMenuItem erase= new JMenuItem ("Erase");
m.add(erase);
Quatrièmement
Nous allons écrire les codes qui serviront a construire les 3 lignes de la fenêtre calculatrice, n'oubliez surtout pas l'application comporte 6 lignes et 2 colonnes. Ça ceux sont les codes pour les 3 premières lignes:
//Ajout dans Le Jpanel 1 et creation de Jtext
p1=new JPanel();// creation du Panel1
p1.setLayout(new GridLayout(6,2,10,10)); //4,2,10,10 , // Creation de la structure, du shema de la fenetre
//Ajout de la 1ere ligne, le Titre plus le champs
l=new JLabel("Entrez le 1er nombre!!! ");
p1.add(l); // ajout de la ligne dans le Jpanel Principal
t=new JTextField(20);
p1.add(t); // ajout du champs dans le Jpanel Principal
// 2eme
l=new JLabel("Entrez le 2eme nombre!!! ");
p1.add(l);
t1=new JTextField(20);
p1.add(t1);
// 3eme Resultat
l=new JLabel("Resultat: ");
p1.add(l);
t2=new JTextField(20);
t2.setBackground (Color.BLACK);
t2.setForeground (Color.GREEN);
t2.setEnabled(false);
p1.add(t2);
Cinquièmement nous allons ajouter les 3 autres lignes:
// Action Buton
A=new JButton("Additon");
p1.add(A); // ajout du 1er button dans le Jpanel Principal
B=new JButton("Multiplication");
p1.add(B);
C=new JButton("Division");
p1.add("SOUTH",C);
D=new JButton("EXP");
p1.add(D);
E=new JButton("Puissance");
p1.add(E);
F=new JButton("Square root");
p1.add(F);
// Action Button
Sixièmement
Maintenant nous allons mettre des actions sur les Boutons pour qu'ils fassent les calculs:
//action Addition
// Gestion des evenments sur le button d'addition,
A.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+(t+b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
});// Gestion des evenments sur le button d'addition,
// Gestion des evenments sur le button d'Multiplication,
//Action Multiplication
B.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+(t*b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
}); // Gestion des evenments sur le button d'Multiplication,
//Action Division
// Gestion des evenments sur le button Division,
C.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+(t/b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
});// Gestion des evenments sur le button Division,
//Exponetiel
// Gestion des evenments sur le button Exponentiel,
D.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
String w=" "+Math.exp(t);
t2.setText(w);
}
catch(NumberFormatException er){}
}
});// Gestion des evenments sur le button Exponentiel,
//Puissance
// Gestion des evenments sur le button Puissance,
E.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+Math.pow(t,b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
}); // Gestion des evenments sur le button Puissance,
//Racine Carrer
// Gestion des evenments sur le button racine Carrer,
F.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
double t=Double.parseDouble(ad);
String w=" "+Math.sqrt(t);
t2.setText(w);
}
catch(NumberFormatException er){}
}
}); //Racine Carrer
// Gestion des evenments sur le button racine Carrer,
// Gestion des evenments button qui efface les inputs, Button bar which erase the TextField
erase.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
t.setText("");
t1.setText("");
t2.setText("");
}
catch(NumberFormatException er){}
}
});// Gestion des evenments button qui efface les inputs, Button bar which erase the TextField
Septièmement
Nous allons ecrire le code qui gere la fenetre. C'est a dire celui responsanble de construitre la fenêtre avec le titre de la fenetre l'image d'icone etc.
Voici le code complet:
import javax.swing.*;
import javax.swing.ImageIcon;
import java.util.*;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Additon2
{
//Declaration des variables, Variable Declaration
JPanel p1; // Panel Principale, Main Panel
JLabel l;
JButton A,B,C,D,E,F;
JTextField t,t1,t2;
JFrame f;
ImageIcon i;
Image e;
//Declaration des variables, Variable Declaration
//Constructeur
public Additon2(){
// JMenu bar
JMenuBar JMenu=new JMenuBar ();
JMenu m= new JMenu ("Option");// JMenu
JMenu.add(m);
// Ajouter Item (Element dans le meno Class)
JMenuItem erase= new JMenuItem ("Erase");
m.add(erase);
//Ajout dans Le Jpanel 1 et creation de Jtext
p1=new JPanel();// creation du Panel1
p1.setLayout(new GridLayout(6,2,10,10)); //4,2,10,10 , // Creation de la structure, du shema de la fenetre
//Ajout de la 1ere ligne, le Titre plus le champs
l=new JLabel("Entrez le 1er nombre!!! ");
p1.add(l); // ajout de la ligne dans le Jpanel Principal
t=new JTextField(20);
p1.add(t); // ajout du champs dans le Jpanel Principal
// 2eme
l=new JLabel("Entrez le 2eme nombre!!! ");
p1.add(l);
t1=new JTextField(20);
p1.add(t1);
// 3eme Resultat
l=new JLabel("Resultat: ");
p1.add(l);
t2=new JTextField(20);
t2.setBackground (Color.BLACK);
t2.setForeground (Color.GREEN);
t2.setEnabled(false);
p1.add(t2);
// Action Buton
A=new JButton("Additon");
p1.add(A); // ajout du 1er button dans le Jpanel Principal
B=new JButton("Multiplication");
p1.add(B);
C=new JButton("Division");
p1.add("SOUTH",C);
D=new JButton("EXP");
p1.add(D);
E=new JButton("Puissance");
p1.add(E);
F=new JButton("Square root");
p1.add(F);
// Action Buton
//action Addition
// Gestion des evenments sur le button d'addition,
A.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+(t+b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
});// Gestion des evenments sur le button d'addition,
// Gestion des evenments sur le button d'Multiplication,
//Action Multiplication
B.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+(t*b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
}); // Gestion des evenments sur le button d'Multiplication,
//Action Division
// Gestion des evenments sur le button Division,
C.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+(t/b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
});// Gestion des evenments sur le button Division,
//Exponetiel
// Gestion des evenments sur le button Exponentiel,
D.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
String w=" "+Math.exp(t);
t2.setText(w);
}
catch(NumberFormatException er){}
}
});// Gestion des evenments sur le button Exponentiel,
//Puissance
// Gestion des evenments sur le button Puissance,
E.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
String ad2= t1.getText();
double t=Double.parseDouble(ad);
double b=Double.parseDouble(ad2);
String w=" "+Math.pow(t,b);
t2.setText(w);
}
catch(NumberFormatException er){}
}
}); // Gestion des evenments sur le button Puissance,
//Racine Carrer
// Gestion des evenments sur le button racine Carrer,
F.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
String ad= t.getText();
double t=Double.parseDouble(ad);
String w=" "+Math.sqrt(t);
t2.setText(w);
}
catch(NumberFormatException er){}
}
}); //Racine Carrer
// Gestion des evenments sur le button racine Carrer,
// Gestion des evenments button qui efface les inputs, Button bar which erase the TextField
erase.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try{
t.setText("");
t1.setText("");
t2.setText("");
}
catch(NumberFormatException er){}
}
});// Gestion des evenments button qui efface les inputs, Button bar which erase the TextField
//Fenetre
f=new JFrame("Calculatrice JBEJ");
f.setVisible(true);
f.getContentPane().add("Center",p1);//Positionement Au Centre
f.setResizable(false); // Permet de ne pas redimentionner la fenetre
f.setJMenuBar(JMenu);// JMenu bar horizontal
i=new ImageIcon("r.jpg");
e=i.getImage();
p1.setBorder(BorderFactory.createLineBorder(Color.BLACK,4));
l.setForeground(Color.BLUE);
f.setSize(300,250);
f.setLocationRelativeTo(null);
}
public static void main(String [] args){
new Additon2 ();
}
}
Regarder la video ici:https://www.youtube.com/watch?v=5GuWwK3QpzU
Telecharger l'Application Calculatrice pour le TESTER ici:https://drive.google.com/open?id=0B8kGBa6WATxqYWJtVFFfMHlBNkU
Commentaires
Enregistrer un commentaire