1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
unit Execute.AwesomeFMX;
{
Awesome FMX for XE6 (c)2014 by Paul TOTH <tothpaul@execute.re>
http://www.execute.re
}
interface
uses
System.Classes, System.Types, System.UITypes,
FMX.Controls, FMX.Graphics, FMX.Types;
type
TAwesomeFMX = class(TControl)
public
constructor Create(AOwner: TComponent); override;
procedure Paint; override;
published
property Position;
property Width;
property Height;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Execute.SARL', [TAwesomeFMX]);
end;
{ TAwesomeFMX }
constructor TAwesomeFMX.Create(AOwner: TComponent);
begin
inherited;
Position.X := 20;
Position.Y := 20;
Width := 320;
Height := 160;
end;
procedure TAwesomeFMX.Paint;
var
R: TRectF;
begin
R := LocalRect;
Canvas.Stroke.Color := TAlphaColorRec.Black;
Canvas.Stroke.Thickness := 4;
Canvas.DrawRect(R, 0, 0, [], 1);
Canvas.Font.Family := 'Arial';
Canvas.Font.Style := [TFontStyle.fsBold];
Canvas.Font.Size := 48;
Canvas.Fill.Color := TAlphaColorRec.Black;
R.Right := R.Left + 320;
Canvas.FillText(R, 'FMX'#13'IS'#13'AWESOME', False, 1, [], TTextAlign.Leading);
end;
end. |
Partager