Topic: есть сомнения
в программа создаются динамические объекты для каждой записи в базе
я пытаюсь получить TLabel и произвести какие либо операции с ним
код работает., но я сомневаюсь в правильности скрипта
так я создаю объекты
procedure collektionComponent(var tagid,txt: string);
var
l,i:integer;
begin
sPanel:=TPanel.Create(Form1);
sPanel.Parent:=Scroll;
sPanel.Width:=425;
sPanel.Height:=73;
sPanel.Left := ( Scroll.Width - sPanel.Width) div 2;
sPanel.Top :=18;
sPanel.ParentBackground:=False;
sPanel.Color:=$00FF8888;
sPanel.BevelOuter:=bvNone;
sPanel.BevelInner:=bvNone;
sPanel.BorderStyle:=bsNone;
sPanel.Ctl3D:=False;
sPanel.BevelWidth:=0;
sPanel.Visible:=True;
sLabel:=TLabel.Create(Form1);
sLabel.Parent:=sPanel;
sLabel.Width:=sPanel.Width;
sLabel.Height:=sPanel.Height;
sLabel.AutoSize:=False;
sLabel.WordWrap:=True;
sLabel.Alignment:=taCenter;
sLabel.Layout:=tlCenter;
sLabel.Font.Size:=sSizeLab;
sLabel.Caption:=txt;
sLabel.Font.Color:=$00FFD7D7;
sLabel.OnMouseDown:=@MouseDown;
end;
так я получаю нужный мне Label
procedure MouseDown(Sender: Tobject);
var
LPanel: TPanel;
begin
LPanel := nil;
if sender is TLabel then
if TLabel(sender).Parent is TPanel then
LPanel := TPanel(TLabel(sender).Parent);
if (TLabel) then
begin
ShowMessage(TLabel(sender).Caption);
end;
end;
мне кажется, что получаю я его не правильно..
может кто-то подправит?