Здравствуйте!
Есть такой код:
unit Unit2;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
FMX.Controls.Presentation, FMX.ScrollBox, FMX.StdCtrls;
type
TScrBox = class(TPresentedScrollBox)
public
constructor Create(AOwner: TComponent); override;
procedure Paint; override;
end;
TForm2 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
FContentChange: TNotifyEvent;
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.fmx}
{ TScrBox }
constructor TScrBox.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
end;
procedure TScrBox.Paint;
begin
inherited;
Canvas.DrawDashRect(LocalRect, 0, 0, AllCorners, 1, TAlphaColorRec.Red);
end;
procedure TForm2.Button1Click(Sender: TObject);
var
ScrBox: TScrBox;
Pnl: TPanel;
begin
ScrBox:=TScrBox.Create(Self);
ScrBox.Parent:=Self;
ScrBox.AutoCalculateContentSize:=False;
ScrBox.ContentSize.Width:=1000;
ScrBox.ContentSize.Height:=1000;
Pnl:=TPanel.Create(ScrBox);
Pnl.Parent:=ScrBox;
Pnl.Position.X:=10;
Pnl.Position.Y:=10;
end;
end.
Однако, вопреки ожиданиям, при клике на Button1 получаю
Ни скроллбаров, ни панельки внутри ScrBox.
Подскажите, что не так? Как правильно унаследоваться от TPresentedScrollBox?