Red de conocimiento de abogados - Derecho de sociedades - calculadora java de 16 botones (para escribir usando un bucle for) código fuente

calculadora java de 16 botones (para escribir usando un bucle for) código fuente

Escrito por mí, para su referencia import java.awt.BorderLayout;

import java.awt.FlowLayout

import java.awt.GridLayout; /p>

importar java.awt.event.ActionEvent;

importar java.awt.event.ActionListener;

importar javax.swing.JButton;

importar javax.swing.JFrame;

importar javax.swing.JPanel;

importar javax.swing.JTextField; la clase pública Counter implementa ActionListener{ /**

* @param args

*/

marco JFrame privado

campo JTextField privado

JButton privado clear_but; /p>

botones JButton[] privados

String str="123 456-789*0.=/"

contador público() {

frame=new JFrame("Calculadora t\t\t\t\t\t\t");

field=new JTextField(15);

clear_but= nuevo JButton("C");

botones=nuevo JButton[25];

for(int i=0; ilt; str.length(); i )

{

botones[i]=new JButton(str.substring(i, i 1));

}

campo. "");

}

init vacío privado(){

addEventHandler()

frame.setLayout(new BorderLayout(); ));

JPanel n_panel=nuevo JPanel();

JPanel c_panel=nuevo JPanel();

n_panel.setLayout(nuevo FlowLayout() );

frame.add(n_panel, BorderLayout.NORTH);

n_panel.add(field);

n_panel.add(clear_but);

p>

c_panel.setLayout(new GridLayout(4, 4));

for(int i=0; ilt; 16; i)

{

c_panel.add(botón

ns[i]);

}

frame.add(c_panel, BorderLayout.CENTER);

}

showMe vacío público); (){

init();

frame.setSize(300, 240

//frame.pack(); (400, 360);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); > privado vacío addEventHandler(){

//clear_but.addActionListener(new MyActionListener());

clear_but.addActionListener(new ActionListener(){

público void actionPerformed(ActionEvent e) {

field.setText("");

}

}); i=0; ilt; 16; i )

{

final int = i;

botones[i].addActionListener(this);

p>

// @Override

// public void actionPerformed(ActionEvent e) {

// System.out.print(e.getActionCommand( ));

p>

// //System.out.print(str.substring(en, en 1)); //

}

}

Cadena num=""

Cadena bandera=""; > //@Override

public void actionPerformed(ActionEvent e) {

String str=e.getActionCommand();

if(str.equals(" =")){

Doble a=Double.valueOf(num);

Doble b=Double.valueOf(field.getText());

doble suma=0;

p>

if(flag.equals(" ")){

suma=a b;

campo.setText( suma "");

}

if(flag.equals("-")){

suma=a-b;

fie

ld.setText("" suma);

}

if(flag.equals("*")){

suma=a*b;

field.setText("" suma);

}

if(flag.equals("/")){

suma =a/b;

field.setText("" suma);

}

System.out.println(a bandera b "=" suma) ;

}

else if(".0123456789".indexOf(str)!=-1){

String newtext=field.getText();

nuevotexto = cadena

campo.setText(nuevotexto

//System.out.print(cadena

); }

else if(str.matches("[ *-/]{1}")){

//else if(" -*/".indexOf(str) !=-1){

num=field.getText();

field.setText("");

flag=

// System.out.print(str);

}

}

public static void main(String[] args) {

nuevo Contador().showMe();

}}