Configuração do JTextField na calculadora

5 respostas
Paulo_Mour

Srs. boa tarde,

Quero somente criar a interface da calculadora com o campo para digitar em cima e os números e demais botões abaixo(sem funcionalidades). Meu problema está em configurar o JTextField.
Vocês poderiam me ajudar ? Segue o código:

Obrigado.

import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class CriaCalculadora extends JFrame
{
	private JTextField textField;
	private JButton botoes[];//array de botões
	private String numeros[] = {"9", "8", "7", "6", "5", "4", "3", "2", "1", "0",
			"+", "-", "*", "/", ".", "="};
	private GridLayout gridLayout;	
	private JPanel painel;
	private BorderLayout borderLayout;
	
	//construtor sem argumentos
	public CriaCalculadora()
	{
		super("Calculadora");
				
		textField = new JTextField();
		textField.setFont(new Font("Serif", Font.PLAIN, 14));
		textField.setText("");
		add(textField, BorderLayout.NORTH);		
		
		gridLayout = new GridLayout(4, 4, 2, 2);//4 por 4		
		setLayout(gridLayout);//configura o layout JFrame
		botoes = new JButton[numeros.length];//cria array de JButtons
			
		for(int count = 0 ; count < numeros.length ; count++)
		{			
			botoes[count] = new JButton(numeros[count]);
			add(botoes[count]);
		}		
	}	
	
}
import javax.swing.JFrame;

public class CriaCalculadoraTest
{
	public static void main(String[] args)
	{
		CriaCalculadora criaCalculadora = new CriaCalculadora();
		
		criaCalculadora.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		criaCalculadora.setSize(350, 200);
		criaCalculadora.setVisible(true);
	}

}

5 Respostas

samuk1

Deixa eu ver se entendi… Você vai criar o JtextField Somente para o resultado?
E qual a sua duvida afinal? O que vc quer configurar no JTextField… Seja mais claro Por favor.

ViniGodoy
Paulo_Mour

Samuk, boa noite.

O que estou fazendo na verdade é tão somente criar a máscara da calculadora sem nenhuma funcionalidade. O JTextField seria para digitação das operações, mas em um primeiro momento estas operações não serão executadas.

Paulo_Mour

Boa noite Vini,

Li o que indicou mas no momento a minha dúvida é mais simples, porém tenho certeza que mais tarde, ao implementar a calculadora com funcionalidades me será muito útil.

Obrigado.

Marcio_Lima

Dividindo em duas partes, ficará:

private GridLayout gridLayout, txtLayout;	
	private JPanel painel, pnTexto;
// . . .
	pnTexto = new JPanel();		
	txtLayout = new GridLayout(2, 1);
	pnTexto.setLayout(txtLayout);    // <<< ALTERADO >>>
	add(pnTexto);
	painel = new JPanel();
	painel.setLayout(gridLayout);//configura o layout JFrame   // <<< ALTERADO >>>

// . . .
                painel.add(botoes[count]);   // <<< ALTERADO >>>
// . . .
                pnTexto.add(painel);
Criado 23 de agosto de 2012
Ultima resposta 23 de ago. de 2012
Respostas 5
Participantes 4