Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

animated-modal-message

Animated Modal for Delphi VCL

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

Animated Modal for Delphi VCL

A modern, animated modal dialog component for Delphi VCL inspired by contemporary UI Angular.

The component displays beautiful modal messages with a smooth Zoom-In + Bounce animation while dimming the owner form, providing a clean and focused user experience.

✨ Features

  • 🎉 Modern animated modal dialogs
  • 🌑 Automatically darkens the owner form
  • 🚀 Smooth Zoom-In animation with Bounce effect
  • ✅ Four built-in modal types
    • Success
    • Error
    • Warning
    • Question
  • 🎨 Modern and clean design
  • ✨ Auto close message
  • ⚡ Lightweight and easy to use
  • 🔥 Simple API
  • 🖥 Works with Delphi VCL applications

Modal Types

Type Description
mkSuccess Displays a success message
mkError Displays an error message
mkWarning Displays a warning message
mkQuestion Displays a confirmation dialog with Yes and No callbacks

Installation

Simply add the component source folder to your Delphi Library Path or include it in your project.

Then add the units below to your uses clause:

pascal
uses
  Vcl.AnimatedModal.Types,
  Vcl.AnimatedModal.Builder;

Basic Usage

Success Message

pascal
procedure TFMainForm.Button1Click(Sender: TObject);
begin
  TAnimatedModalBuilder.New(Self)
    .Kind(mkSuccess)
    .Title('Tudo certo!')
    .Message('Você se cadastrou e logou com sucesso.')
  .Show;
end;

Error Message with auto close

pascal
procedure TFMainForm.Button2Click(Sender: TObject);
begin
  TAnimatedModalBuilder.New(Self)
    .Kind(mkError)
    .Title('E-mail inválido!')
    .Message('Este e-mail já está cadastrado.')
    .AutoClose(3)
  .Show;
end;

Warning Message with auto close

pascal
procedure TFMainForm.Button3Click(Sender: TObject);
begin
  TAnimatedModalBuilder.New(Self)
    .Kind(mkWarning)
    .Title('ATENÇÃO!')
    .Message('Esta é uma mensagem de aviso.')
    .AutoClose(3)
  .Show;
end;

Confirmation Dialog

The Question modal supports callback procedures for both confirmation and cancellation.

pascal
procedure TFMainForm.Button4Click(Sender: TObject);
begin
  TAnimatedModalBuilder.New(Self)
    .Kind(mkQuestion)
    .Title('Excluir registro?')
    .Message('Essa ação não pode ser desfeita. Deseja continuar?')

    .OnYesClick(
      procedure
      begin
        ShowMessage('Excluído!');
      end)

    .OnNoClick(
      procedure
      begin
        ShowMessage('Cancelado.');
      end)
  .Show;
end;

Animation

Every modal is displayed using a modern animation sequence:

  • Zoom-In
  • Bounce Effect
  • Smooth Fade Overlay

The owner form is automatically dimmed while the modal is displayed, keeping the user's attention focused on the dialog.

Demo

A complete demonstration project is available in the Demo folder.

The demo includes examples for:

  • Success dialog
  • Error dialog
  • Warning dialog
  • Question dialog
  • Callback usage

Folder Structure

pascal
Source/
    Vcl.AnimatedModal.pas
    Vcl.AnimatedModal.Builder.pas
    Vcl.AnimatedModal.StyledButton.pas
    Vcl.AnimatedModal.Types.pas

Demo/
    AnimatedModalDemo.dproj

Author

Itamar Monteiro. Developed with ❤️ using Delphi VCL.