![]() |
|
نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : دروس دلفي للمبتدئين (https://delphi4arab.net/forum/forumdisplay.php?fid=13) +--- الموضوع : نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) (/showthread.php?tid=1761) الصفحات:
1
2
|
نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - K.Hossam16 - 07-03-2010 اقدم لكم مضوعي الاول وهو نقل الكتابة الموجودة على (Edit1) الى(ListBox1) ونبدا:
اولا تضع العناصر(Button1\Edit1\ListBox1) وثانيا تكتب التعليمةالتالية في حدث الضغط على الازر (Button1) التعليمة: PHP كود : ListBox1.Items.Add(Edit1.Text); نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - kachwahed - 07-03-2010 الأخ K.Hossam16 مرحبا بك في المنتدى أخي K.Hossam16 أحسن ما يبدؤ به اسم الله عز وجل ![]() فالسلام عليكم ورحمة الله إقتباس :يا اخ K.Hossam16 لا اقصد الاهانة وكلنا مبتدئين في عالم البرمجة لكن منا رجاء ان تكون المواضيع المطروحة اكثر جديةممم... طيب. لنتعاون ونجعل الموضوع أكثر جدية... أخي K.Hossam16 ما معنى الكود الآتي؟ PHP كود : ListBox1.Items.AddObject(Edit1.Text, Edit1); وما الفائدة منه؟ سبق هذا في المنتدى باستخدام مكون آخر، استخدم البحث. تحياتي، بالتوفيق
نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - قديم الشوق - 07-03-2010 اظن مافيه فرق على قولهم كل الطرق تودي الى دلفي العرب
نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - kachwahed - 07-03-2010 إقتباس :كل الطرق تودي الى دلفي العربلكن الاختلاف يقتضي المغايرة! فأكيد هناك فرق. إقتباس :كنت اود ان اقوم بالاجابة ولكن الاخ kachwahed قد سأل الاخ k.hossam16والسابقون السابقون... تفضل أخي ramijz
نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - ramijz - 07-03-2010 بسم الله الرحمن الرحيم تكرم عيونك اخي kachwahed طبعا لست ضليع في الشرح لكن سوف احاول جاهداً ان اوصل المعلومة بشكل سهل وبسيط اولاً : معنى الكود : PHP كود : ListBox1.Items.AddObject(Edit1.Text, Edit1); هذا يذكرني بالمؤشرات Pointers ايام الباسكال التي لم نعد نستخدمها كثيرا في حياتنا البرمجية الا ماندر للوهلة الاولى نظن بأن التعليمة السابقة تعمل عمل المنهج Add يعني اضافة النص الى ListBox ولكن مع قليل من التروي نرى بأننا قمنا باضافة نص والذي يمثل قيمة Edit1.Text الى listbox ليشير الى الكائن Edit1 . الى الان الامور ليست واضحة تماما للقارئ لا بأس سوف اكمل الشرح لكن تمهلوا قليلاً : 1 - المنهج Add يقوم باضافة نص من النوع string الى listbox وهذا امر معروف وبسيط 2 - المنهج AddObject يقوم بعمل Add مع اضافة بسيطة ولكن فعلها كبير وهي وضع مؤشر مع القيمة ليشير الى الموقع الذي يشير اليه العنصر Edit1 . طيب هذا كلام جميل طالما اصبحت القيمة الموجودة في listbox تشير الى العنصر Edit1 كيف سوف اتعامل معها من خلال listbox ؟ بسيطة من خلال Type cast اي قلب الانواع مثال : على فرض ان Edit1.text كان يوحي القيمة "Hallo" ونفذنا التعليمة PHP كود : ListBox1.Items.AddObject(Edit1.Text, Edit1); الان سوف نتعامل مع العنصر Edit1 من ListBox1 لتغيير لون العنصر Edit1 الى الاحمر لاحظوا سحر الدلفي PHP كود : TEdit(ListBox1.Items.Objects[ListBox1.Items.IndexOf('Hallo')]).Color:=clRed; ماهذا مافعلت هذا يسمى قلب الانواع الذي حصل انني قمت بجلب العنوان الذاكري الذي تم تخزينه في القيمة Hallo والذي يشير الى العنصر Edit1 ثم قمت بتحويله من Tobject الى TEdit حتى استطيع الوصول الى الخاصية Color وقمت بعدها بتغيير اللون. ياالله الفرق من الارض للسما طيب لقد اطلت عليكم الشرح لكن هذه الامانة العلمية **** من الله ان اكون قد افدت بشرحي هذا نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - kachwahed - 07-03-2010 عظيم... إقتباس :وما الفرق بينه وبين الذي كتبته؟الآن نجيب على السؤال الثاني: من خلال شرح أخي ramijz يتضح أن المنهج AddObject فيه زيادة تخزين مؤشر على غرض TObject يمكن استخدامه لاحقا، وهذا الاستخدام هو الفائدة المرجوة من هذه الطريقة، وبهذا نكون قد أجبنا أيضا على السؤال الثالث. مثال آخر من هنا. الآن من يعطينا مثال لاستعمال آخر (بالتأشير على أشياء غير المكونات)؟ نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - AL-MOB4RM3G - 08-03-2010 بسم الله, اولا, شكرا للأخ K.Hossam16 على الموضوع, وبدآية موفّقة ان شاء الله, ثانيا, بارك الله لك اخي كاش واحد و اخي ramijz, الرد كان بالفعل مفيد, إقتباس :(بالتأشير على أشياء غير المكونات)؟ غير المكونات؟؟؟؟ مثل ماذا, اعطي فتّوشة دون ان تقول الجوآب, :laugh: بالتوفيق للجميع, نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - mohfa - 08-03-2010 طريقة اخرى : كود : ListBox1.AddItem(Edit1.Text, Edit1);نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - ramijz - 08-03-2010 السلام عليكم اخي الحبيب mohfa التعليمة PHP كود : ListBox1.AddItem(Edit1.Text, Edit1); PHP كود : ListBox1.Items.AddObject(Edit1.Text, Edit1); والله اعلم نقل الكتابة من (Edit1) الى(ListBox1) (للمبتدئين) - kachwahed - 08-03-2010 أهلا بعودتك أخي AL-MOB4RM3G :clap2: إقتباس :فتّوشةفتّوشة: Undeclared identifier :blink: أيا كانت... المقصود بشيء آخر غير مكون مثلا السجلات Records مثال: PHP كود : PMyRec = ^TMyRec; |