Uma calculadora moderna, responsiva e inteligente desenvolvida em JavaFX utilizando o padrão MVC (Model-View-Controller). O projeto conta com gerenciamento dinâmico de histórico, prevenção de erros matemáticos e auto-ajuste de interface para números grandes.
- Operações Básicas: Soma, subtração, multiplicação e divisão.
- Funções Especiais: Cálculo de porcentagem (
%) e inversão de sinal (+/-). - Histórico Inteligente Dinâmico:
- Modo Simplificado: Exibe apenas a operação atual em foco ou o último resultado gerado (estilo iOS/Windows).
- Modo Completo: Exibe a expressão matemática inteira encadeada conforme o usuário realiza múltiplos cálculos seguidos.
- Auto-ajuste de Fonte (Anti-Truncamento): O sistema monitora a quantidade de caracteres no visor e diminui dinamicamente o tamanho da fonte para evitar que os números fiquem cortados com as reticências (
...). - Tratamento de Erros de Borda:
- Bloqueio de múltiplos pontos decimais no mesmo número (evita
NumberFormatException). - Proteção e aviso visual de
Erropara divisões por zero. - Substituição inteligente de operadores em tempo de digitação.
- Bloqueio de múltiplos pontos decimais no mesmo número (evita
- Java: Versão 22
- JavaFX: Versão 22 (Interface Gráfica)
- FXML: Estruturação visual da janela e posicionamento de nós
- FX-CSS: Customização estética dos botões, displays e container principal
A arquitetura do projeto separa a definição visual da inteligência de controle:
src/main/resources/.../calculadora-view.fxml: Arquivo contendo a estrutura de layouts (BorderPane,GridPane,VBox), IDs e vínculos de eventos dos botões.src/main/java/.../controller/CalculadoraController.java: Concentra toda a máquina de estados da calculadora, formatação de dados e regras de negócio visual.
- Ter o JDK 22 instalado configurado nas variáveis de ambiente.
- Ter o ambiente JavaFX configurado na sua IDE (IntelliJ IDEA, Eclipse ou VS Code) ou utilizar o gerenciador de dependências (Maven/Gradle) configurado no projeto.
- Clone o repositório:
git clone https://github.com/PedroPog/calculadora-fx.git
