Desenvolvendo um Bloco de Notas Simples em Delphi: Passo a Passo para Iniciantes

Bloco de Notas Simples em Delphi
Bloco de notas com caneta em cima

Introdução

Criar um bloco de notas simples é um ótimo projeto para iniciantes em Delphi, pois ele cobre os conceitos básicos de manipulação de arquivos, componentes visuais e eventos. Neste tutorial, vamos desenvolver um bloco de notas com funcionalidades básicas de criação, abertura, edição e salvamento de arquivos de texto. Vamos explicar cada passo e cada trecho de código para que você possa entender e aplicar em seus próprios projetos.

Nesse post iremos criar um bloco de notas simples em Delphi.

Configurando o Ambiente

  1. Abrindo o Delphi: Abra o Delphi e crie um novo projeto VCL Forms Application.
  2. Configurando o Formulário Principal: Adicione os seguintes componentes ao formulário:
  • TMemo: Para entrada e exibição de texto.
  • TButton (Novo): Para criar um novo arquivo.
  • TButton (Abrir): Para abrir um arquivo existente.
  • TButton (Salvar): Para salvar o arquivo atual.
  • TButton (Salvar Como): Para salvar o arquivo atual com um novo nome.
  • TButton (Sair): Para fechar o aplicativo.

Organize os componentes no formulário de forma que fiquem acessíveis e visualmente agradáveis.

Estrutura do Projeto Bloco de Notas Simples em Delphi

O projeto terá a seguinte estrutura básica:

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    BtnNew: TButton;
    BtnOpen: TButton;
    BtnSave: TButton;
    BtnSaveAs: TButton;
    BtnExit: TButton;
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    procedure BtnNewClick(Sender: TObject);
    procedure BtnOpenClick(Sender: TObject);
    procedure BtnSaveClick(Sender: TObject);
    procedure BtnSaveAsClick(Sender: TObject);
    procedure BtnExitClick(Sender: TObject);
  private
    { Private declarations }
    CurrentFileName: string;
    procedure SaveFile(FileName: string);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BtnNewClick(Sender: TObject);
begin
  Memo1.Clear;
  CurrentFileName := '';
end;

procedure TForm1.BtnOpenClick(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
    Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
    CurrentFileName := OpenDialog1.FileName;
  end;
end;

procedure TForm1.BtnSaveClick(Sender: TObject);
begin
  if CurrentFileName = '' then
    BtnSaveAsClick(Sender)
  else
    SaveFile(CurrentFileName);
end;

procedure TForm1.BtnSaveAsClick(Sender: TObject);
begin
  if SaveDialog1.Execute then
  begin
    SaveFile(SaveDialog1.FileName);
    CurrentFileName := SaveDialog1.FileName;
  end;
end;

procedure TForm1.BtnExitClick(Sender: TObject);
begin
  Close;
end;

procedure TForm1.SaveFile(FileName: string);
begin
  Memo1.Lines.SaveToFile(FileName);
end;

end.

Explicação do Código

1- Declaração dos Componentes: Na seção interface, declaramos todos os componentes do formulário, como TMemo, TButton, TOpenDialog e TSaveDialog. Esses componentes serão usados para interação com o usuário e manipulação de arquivos.

2- Evento BtnNewClick: Este evento é acionado quando o botão “Novo” é clicado. O código simplesmente limpa o conteúdo do TMemo e redefine o nome do arquivo atual.

procedure TForm1.BtnNewClick(Sender: TObject);
begin
  Memo1.Clear;
  CurrentFileName := '';
end;

3- Evento BtnOpenClick: Este evento é acionado quando o botão “Abrir” é clicado. O código verifica se o usuário selecionou um arquivo no diálogo de abertura e, em caso afirmativo, carrega o conteúdo do arquivo no TMemo e armazena o nome do arquivo atual.

procedure TForm1.BtnOpenClick(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
    Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
    CurrentFileName := OpenDialog1.FileName;
  end;
end;

4- Evento BtnSaveClick: Este evento é acionado quando o botão “Salvar” é clicado. O código verifica se um nome de arquivo atual já está definido. Se não estiver, chama o método BtnSaveAsClick para abrir o diálogo de salvamento. Caso contrário, chama o método SaveFile para salvar o arquivo.

procedure TForm1.BtnSaveClick(Sender: TObject);
begin
  if CurrentFileName = '' then
    BtnSaveAsClick(Sender)
  else
    SaveFile(CurrentFileName);
end;

5- Evento BtnSaveAsClick: Este evento é acionado quando o botão “Salvar Como” é clicado. O código verifica se o usuário selecionou um local e nome de arquivo no diálogo de salvamento e, em caso afirmativo, chama o método SaveFile para salvar o conteúdo do TMemo no arquivo e atualiza o nome do arquivo atual.

procedure TForm1.BtnSaveAsClick(Sender: TObject);
begin
  if SaveDialog1.Execute then
  begin
    SaveFile(SaveDialog1.FileName);
    CurrentFileName := SaveDialog1.FileName;
  end;
end;

6- Evento BtnExitClick: Este evento é acionado quando o botão “Sair” é clicado. O código simplesmente fecha o aplicativo.

procedure TForm1.BtnExitClick(Sender: TObject);
begin
  Close;
end;

7- Método SaveFile: Este método é responsável por salvar o conteúdo do TMemo em um arquivo. É chamado pelos eventos BtnSaveClick e BtnSaveAsClick.

procedure TForm1.SaveFile(FileName: string);
begin
  Memo1.Lines.SaveToFile(FileName);
end;

Executando o Projeto

  1. Criando um Novo Arquivo: Execute o programa e clique no botão “Novo” para iniciar um novo documento. Digite algum texto no TMemo.
  2. Abrindo um Arquivo Existente: Clique no botão “Abrir” e selecione um arquivo de texto para carregar seu conteúdo no TMemo.
  3. Salvando o Arquivo: Clique no botão “Salvar” para salvar o documento atual. Se for a primeira vez que você está salvando o documento, o diálogo de salvamento será aberto para que você possa escolher o local e o nome do arquivo. Se já tiver salvo antes, o arquivo será atualizado.
  4. Salvando Como um Novo Arquivo: Clique no botão “Salvar Como” para salvar o documento atual com um novo nome.
  5. Saindo do Aplicativo: Clique no botão “Sair” para fechar o bloco de notas.
Bloco de Notas Simples em Delphi
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/Bloco-de-Notas-Simples

Conclusão

Desenvolver um bloco de notas simples em Delphi é um excelente projeto para iniciantes, pois aborda conceitos fundamentais como manipulação de arquivos, componentes visuais e eventos. Com este projeto, você aprendeu a criar, abrir, editar e salvar arquivos de texto, além de manipular componentes como TMemo, TButton, TOpenDialog e TSaveDialog. Continuar praticando e expandindo este projeto com novas funcionalidades, como encontrar e substituir texto, pode ajudar a aprofundar ainda mais seus conhecimentos em Delphi. Boa sorte em sua jornada de aprendizado!

Posts Relacionados


Deixe um comentário