Kendi listemi yapmak üzere bir kaç nesneyi create metodu ile her button tıklamasında oluşturuyorum.
Bir ana Layout içinde bir takım nesneler oluşturup Layout'un Align özelliğini Top olarak ayarlıyorum.
Fakat şöyle bir sorun var ki, Birinci ve ikinci defa Button'a tıklayıp eklediyimde herşey normal, ama üçüncü ve daha sonrakı tıklamada, her sonda gelen Layout'u birinci takımın altına eklemekte.
Şöyleki 4 kez buttona tıkladığımda şu şekilde sırlanmış oluyor:
Kod: Tümünü seç
İlk sırada gelen Layout
Dördüncü sırada gelen Layout
Üçüncü sırada gelen Layout
İkinci sırada gelen Layout
Kod: Tümünü seç
var
frm_main: Tfrm_main;
I : Integer;
implementation
{$R *.fmx}
uses uTool;
procedure Tfrm_main.FormCreate(Sender: TObject);
begin
I := 1;
end;
procedure Tfrm_main.AddNewContent(Name: String; Src: TBitmap; ATag : Integer);
var
ALayout : TLayout;
RCT1, RCT2, RCT3 : TRectangle;
ALabel : TLabel;
AImage : TImage;
BTN1, BTN2, BTN3 : TSpeedButton;
begin
ALayout := TLayout.Create(nil);
ALayout.Parent := VertScrollBox1;
ALayout.Align := TAlignLayout.MostTop;
ALayout.Height := 360;
ALayout.Tag := ATag;
RCT1 := TRectangle.Create(nil);
RCT1.Parent := ALayout;
RCT1.Align := TAlignLayout.Top;
RCT1.Height := 48;
RCT1.Fill.Color := TAlphaColorRec.White;
RCT1.Fill.Kind := TBrushKind.Solid;
RCT1.Stroke.Color := TAlphaColorRec.Null;
ALabel := TLabel.Create(nil);
ALabel.Parent := RCT1;
ALabel.Align := TAlignLayout.Client;
ALabel.Margins.Left := 10;
ALabel.StyledSettings := [TStyledSetting.Family];
ALabel.Font.Style := [TFontStyle.fsBold];
ALabel.FontColor := $FF140A54;
ALabel.Font.Family := 'Roboto';
ALabel.Font.Size := 13;
ALabel.Text := Name;
BTN1 := TSpeedButton.Create(nil);
BTN1.Parent := RCT1;
BTN1.Align := TAlignLayout.Right;
BTN1.Width := 48;
BTN1.StyleLookup := 'detailstoolbutton';
BTN1.TintColor := $FF140A54;
BTN1.OnClick := InfoClick;
end;
Kod: Tümünü seç
procedure Tfrm_main.btnInfoClick(Sender: TObject);
begin
AddNewContent('Nahit Habiboff - '+IntToStr(I), Image1.Bitmap, I);
Inc(I);
end;
Yukardaki kodlarla ilgili yalnışlarımı düzeltmemde yardımcı olursanız çok sevinirim.
Herkese önceden teşekkürlerimi sunarım.