Majid.Ebru
یک شنبه 27 بهمن 1392, 00:03 صبح
سلام
من روی فروم برنامه تعدادی کامپوننت از قبیل :لیبل و ادیت و shape و....
در حدود 20 تا shape دارم که رنگشون رو باید تطبق یه شرایط عوض کنم.
با استفاده از یه حلقه For تمام کامپوننت های موجود توی فورم رو چک می کنم که آیا Shape هست یا نه ؟ بعد باید رنگشون رو عوض کنم.
for ii := 0 to testForm.ComponentCount - 1 do
begin
Memo1.Lines.Add(Components[ii].ClassName);
if Components[ii].ClassName = 'TShape' then
begin
OpenIndicator.Brush.Color := clblack;
( Components[ii] as Tshape).Brush.Color := clblue;
end;
اما تمام shape ها پشت سر هم نیست؟
یعنی مواردی که توی memo1 نوشته میشه به این صورت هست :
TShape
TLabel
TLabel
TShape
TShape
TShape
TShape
TButton
TMemo
TButton
TMemo
TButton
TButton
TMemo
TButton
.
.
.
.
TTimer
آیا راهی هست که بتونم تمام shape ها رو پشت سر هم قرار بدم؟
از هر طریقی که ممکن هست راهنمایی کنید ممنون میشم.
با تشکر
من روی فروم برنامه تعدادی کامپوننت از قبیل :لیبل و ادیت و shape و....
در حدود 20 تا shape دارم که رنگشون رو باید تطبق یه شرایط عوض کنم.
با استفاده از یه حلقه For تمام کامپوننت های موجود توی فورم رو چک می کنم که آیا Shape هست یا نه ؟ بعد باید رنگشون رو عوض کنم.
for ii := 0 to testForm.ComponentCount - 1 do
begin
Memo1.Lines.Add(Components[ii].ClassName);
if Components[ii].ClassName = 'TShape' then
begin
OpenIndicator.Brush.Color := clblack;
( Components[ii] as Tshape).Brush.Color := clblue;
end;
اما تمام shape ها پشت سر هم نیست؟
یعنی مواردی که توی memo1 نوشته میشه به این صورت هست :
TShape
TLabel
TLabel
TShape
TShape
TShape
TShape
TButton
TMemo
TButton
TMemo
TButton
TButton
TMemo
TButton
.
.
.
.
TTimer
آیا راهی هست که بتونم تمام shape ها رو پشت سر هم قرار بدم؟
از هر طریقی که ممکن هست راهنمایی کنید ممنون میشم.
با تشکر