| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- unit AboutForm;
- interface
- uses
- System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
- FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.Objects, FMX.Ani, FMX.Layouts,
- FMX.Filter.Effects, FMX.Effects, FMX.StdCtrls, FMX.Controls.Presentation, FMX.Graphics,
- Imaging,
- DemoUtils;
- type
- TFormAbout = class(TForm)
- ImgLogo: TImage;
- PanelBack: TPanel;
- BtnOk: TButton;
- LabVersion: TLabel;
- LabWebsite: TLabel;
- LabImaging: TLabel;
- FlowLayout: TFlowLayout;
- LabGitHub: TLabel;
- Effect: TPixelateEffect;
- EffectAnimation: TFloatAnimation;
- procedure FormCreate(Sender: TObject);
- procedure BtnOkClick(Sender: TObject);
- procedure EffectAnimationFinish(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
- var
- FormAbout: TFormAbout;
- implementation
- uses
- ImagingClasses,
- ImagingFmx;
- {$R *.fmx}
- procedure LoadFmxBitmapFromResourceWithImaging(const ResName: string; Bitmap: TBitmap);
- var
- ResourceStream: TResourceStream;
- Image: TSingleImage;
- begin
- // Could read from stream directly to FMX Bitmap but let's also show
- // reading from resources to TSingleImage.
- ResourceStream := TResourceStream.Create(HInstance, ResName, RT_RCDATA);
- Image := TSingleImage.Create;
- try
- Image.LoadFromStream(ResourceStream);
- ImagingFmx.ConvertImageToFmxBitmap(Image, Bitmap);
- finally
- ResourceStream.Free;
- Image.Free;
- end;
- end;
- procedure TFormAbout.EffectAnimationFinish(Sender: TObject);
- begin
- Effect.Enabled := False;
- Close;
- end;
- procedure TFormAbout.FormCreate(Sender: TObject);
- begin
- LoadFmxBitmapFromResourceWithImaging('LOGO', ImgLogo.Bitmap);
- LabVersion.Text := LabVersion.Text + GetVersionStr;
- end;
- procedure TFormAbout.BtnOkClick(Sender: TObject);
- begin
- if Effect.Enabled then
- Exit;
- Effect.Enabled := True;
- EffectAnimation.Start;
- end;
- end.
|