Menu

Tradução

Português English Español Français

Calculadora Simples em Delphi

Nesse post iremos desenvolver uma calculadora simples em Delphi.

 

Calculadora Simples em Delphi
Calculadora Simples

Introdução

Desenvolver uma calculadora em Delphi é uma excelente maneira de aprender os conceitos básicos da linguagem e como manipular a interface gráfica. Neste guia, vamos criar uma calculadora simples com funções de somar, subtrair, multiplicar, dividir e limpar. Vamos detalhar cada etapa do código para facilitar o entendimento. Se você é iniciante e está começando a aprender, esse é um ótimo projeto pois permite aprender sobre os elementos básicos da linguagem e da interface gráfica do usuário (GUI).

Nesse post iremos desenvolver uma calculadora simples em Delphi.

Passo a Passo da Calculadora Simples em Delphi

Passo 1: Configurando o Ambiente

Primeiro, abra o Delphi e crie um novo projeto de aplicação VCL. Isso gerará um novo formulário (Form) onde adicionaremos os componentes necessários para a calculadora.

Passo 2: Adicionando Componentes à Formulário

Vamos adicionar os seguintes componentes:

  • 1 Edit: para exibir e inserir os números e resultados.
  • 5 Buttons: para as operações (somar, subtrair, multiplicar, dividir e limpar).

Aqui está como configurar a interface:

  1. Edit1: Defina o nome como Edit1.
  2. Button1: Defina o Caption como + e o nome como btnAdd.
  3. Button2: Defina o Caption como - e o nome como btnSub.
  4. Button3: Defina o Caption como * e o nome como btnMult.
  5. Button4: Defina o Caption como / e o nome como btnDiv.
  6. Button5: Defina o Caption como C e o nome como btnClear.

Passo 3: Escrevendo o Código

Vamos adicionar o código para cada botão. Clique duas vezes em cada botão para gerar os eventos OnClick de cada botão.

Vamos adicionar o código do Edit1, clique uma vez com o mouse no componente Edit1 para seleciona-lo, após isso clique na aba Events, ao lado da aba Properties do lado esquerdo do Delphi, encontre o evento OnKeyPress e dê um duplo clique para inserir o código que estará em Edit1KeyPress.

Passo 4: Código Fonte

Aqui está o código completo da nossa calculadora:

Delphi

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
  TForm1 = class(TForm)
    btnAdd: TButton;
    btnSub: TButton;
    btnMult: TButton;
    btnDiv: TButton;
    btnClear: TButton;
    Edit1: TEdit;
    procedure btnAddClick(Sender: TObject);
    procedure btnSubClick(Sender: TObject);
    procedure btnMultClick(Sender: TObject);
    procedure btnDivClick(Sender: TObject);
    procedure btnClearClick(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
    FirstNumber, SecondNumber: Double;
    Operation: String;
    procedure ExecuteOperation;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnAddClick(Sender: TObject);
begin
  FirstNumber := StrToFloat(Edit1.Text);
  Edit1.Clear;
  Operation := '+';
  Edit1.SetFocus;
end;

procedure TForm1.btnClearClick(Sender: TObject);
begin
  Edit1.Clear;
  Edit1.SetFocus;
end;

procedure TForm1.btnDivClick(Sender: TObject);
begin
  FirstNumber := StrToFloat(Edit1.Text);
  Edit1.Clear;
  Operation := '/';
  Edit1.SetFocus;
end;

procedure TForm1.btnMultClick(Sender: TObject);
begin
  FirstNumber := StrToFloat(Edit1.Text);
  Edit1.Clear;
  Operation := '*';
  Edit1.SetFocus;
end;

procedure TForm1.btnSubClick(Sender: TObject);
begin
  FirstNumber := StrToFloat(Edit1.Text);
  Edit1.Clear;
  Operation := '-';
  Edit1.SetFocus;
end;

procedure TForm1.ExecuteOperation;
begin
  SecondNumber := StrToFloat(Edit1.Text);
  if Operation = '+' then
    Edit1.Text := FloatToStr(FirstNumber + SecondNumber)
  else
  if Operation = '-' then
    Edit1.Text := FloatToStr(FirstNumber - SecondNumber)
  else
  if Operation = '*' then
    Edit1.Text := FloatToStr(FirstNumber * SecondNumber)
  else
  if Operation = '/' then
  begin
    if SecondNumber = 0 then
      ShowMessage('Erro: Divisão por zero')
    else
      Edit1.Text := FloatToStr(FirstNumber / SecondNumber);
  end;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then  // Enter key
  begin
    ExecuteOperation;
    Key := #0;
  end;
end;

end.
  

Explicação do Código

1- Declaração de Variáveis:

  • FirstNumber e SecondNumber são usadas para armazenar os números inseridos pelo usuário.
  • Operation guarda a operação escolhida (+, -, *, /).

2- Eventos OnClick:

  • Cada botão de operação (btnAdd, btnSub, etc.) armazena o número inserido no Edit1 como FirstNumber, limpa o Edit1 e define Operation com o símbolo correspondente e seta o foco novamente no Edit1 para que o próximo número seja inserido.

3- Evento OnClick do Botão Clear:

  • btnClear limpa o conteúdo de Edit1.

4- Método ExecuteOperation:

  • Quando o usuário pressiona a tecla Enter, o Edit1KeyPress chama ExecuteOperation.
  • ExecuteOperation converte o texto de Edit1 para SecondNumber e realiza a operação armazenada em Operation.
  • O resultado é exibido em Edit1.

Agora é com você, melhore essa calculadora, adicione mais botões e mais funcionalidades, melhore a interface gráfica do usuário e ganhe novas habilidades a cada novo desafio.

Ilustração do projeto.

Código fonte do exemplo

Você pode fazer o download do exemplo do projeto através do repositório do github:

https://github.com/Gisele-de-Melo/CalculadoraSimples

Conclusão

Neste tutorial, criamos uma calculadora simples em Delphi com funções básicas de adição, subtração, multiplicação, divisão e limpeza. Este exemplo demonstrou como manipular a interface gráfica, responder a eventos e executar operações matemáticas básicas. Compreender esses conceitos é fundamental para quem está começando a programar em Delphi e deseja desenvolver aplicativos mais complexos no futuro. Espero que este guia tenha sido útil e inspire você a explorar mais sobre Delphi e suas capacidades!

Posts Relacionados



Nenhum comentário:

Postar um comentário

Recursividade em Delphi: Conceitos, Exemplos e Aplicações Práticas

Neste post, você aprenderá quando usar recursividade em Delphi, suas vantagens e desvantagens, além de um exemplo prático implementa...