الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

استدعاء العناصر

مغلق
بدأه النقال في 11 مارس 2003 · 2 رد · 757 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كيف يمكنني استدعاء العناصر ليس باسنها بالتحديد ولكن عن طريق اصلها

بمعنى

لو كان لدي نموذج Form1 ويجد عليه العناصر edit1 و edit2 و edit3 كلها من نوع TEdit

ومن نموذج آخر لنفرض Form2 اريد استدعاء تلك العنصر ولكن ليس باسم العنصر اي الطريقة الآتية:

form1.edit1.text:='ok'

فهذا معروف وهذه الطريقة سهلة

ولكن الذي أقصد مثلا

Tform('Form1').Tedit('edit1').Text='ok'

ولكن هذه الطريقة لم تنجح

لانني احاول وضع مربع نص على form2 وعندما استدعي هذا النموذج اضع فيه السم العنصر الذي اريد تغيير خاصية مثلا edit1 او edit2

ارجو المساعدة

#2

سؤال جيد ;)

في خطأ بسيط أثناء صياغه السؤال

اقتباس
اريد استدعاء تلك العنصر ولكن ليس باسم العنصر

انت تريد التعامل مع العناصر ليس من خلال المتغير الذي يمثلها بل من خلال اسمها .

جرب هذا الكود :

على اعتبار ان لدينا

form1 فيه edit1

form2 فيه button1

procedure TForm2.Button1Click(Sender: TObject);

var

ChildControl: TComponent;

begin

ChildControl:=((Application.FindComponent('form1'))as TForm).FindComponent('Edit1');

if(ChildControl<>nil)then

 (ChildControl as TEdit).Text:='ok';

end;

اترك لك المجال لمراجعه delphi help لمعرفه الدوال التي تم استخدامها في المثال ( ان وجدت صعوبه فتفضل بالسؤال ).

#3

شكرا بك أخي kernel80

وآسف على عدم صياغة السؤال بشكل مفهوم

وسأراجع تلك الدوال

هذا الموضوع مغلق.

مواضيع مشابهة