ورود

View Full Version : سلام چگونه تمامی Handle اشیاء داخل فرم رو بدست آوریم ؟؟؟



mkalone
چهارشنبه 05 اسفند 1383, 16:10 عصر
سلام
به طور مثال من یک فرم دارم که دارای 1000 تا TEdit است و می خواهم
در نمایش فرم مقدار Text همه آنها پاک شوند.
درضمن اسامی آنها بر اساس نظم نیست که با FindControl و در یک حلقه این کار
رو بکنم

علت این امر این است که در نمایش مجدد فرم مقادیر قبلی مانده اند. (جهت اطلاع بعضی ها :wink: )

مرسی Mer30
:D

Delphi-Clinic
چهارشنبه 05 اسفند 1383, 17:20 عصر
سلام

با SendMessage به تمام اونا بگو که مثل آدم پاک شن. :)

mkalone
چهارشنبه 05 اسفند 1383, 18:10 عصر
لا بلد
Please komak
من علیرغم دوست داشتن کار با Message ها بلد نیستم با هاشون کار کنم
لطف کن یک مثال بزن ببخشیدا

aliasghar
پنج شنبه 06 اسفند 1383, 06:44 صبح
ببین این کد میتونه کمکت کنه ؟



for i:=0 to Form1.ComponentCount-1 do
if (Form1.Components[i] is TEdit) then
(Form1.Components[i] as TEdit).Clear;

Zahraii
یک شنبه 09 اسفند 1383, 15:44 عصر
ببخشید البته ولی فکر کنم اگه اینجوری باشه بهتره :


for i:=0 to Form1.‍ControlCount-1 do
if (Form1.Controls[i] is TEdit) then
(Form1.Controls[i] as TEdit).Clear;

vcldeveloper
یک شنبه 09 اسفند 1383, 23:58 عصر
ببخشید البته ولی فکر کنم اگه اینجوری باشه بهتره :
فرق چندانی نمیکنه. TControl زیر مجوعه ای از TComponent هست. با توجه به اینکه ممکنه تعدادی شی non-Visual بر روی فرم وجود داشته باشه، ممکنه که حلقه شما در زمان کوتاهتری تموم بشه .(چون Form1.ControlCount فقط اشیائی که از TControl ساخته شده باشند رو میشماره)