تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] الكتابة في أداة تيكس بوكس برمجيا
#1
سلام إخواني

هذا الكود الجميل يقوم بالكتابة في أداة تيكس بوكس
مع وضع إسم التيكسبوكس في متغير








[صورة مرفقة: 729856278.jpg]



ممكن أعرف لماذا هذا الكود شغال فقط عند وضع الأداة في حاوية مثل PANEL
لكن عند وضع التيكسبوكس على الفورم مباشرة
لا يشتغل

شكرا على التوضيح
الرد
تم الشكر بواسطة: Anas Mahmoud
#2
الكود يقوم بالبحث داخل كونترولات الفورم باستخدام For each

لكل كونترول P داخل الفورم لايقوم الكود باختبار p اذا كان التكست بوكس الذي نبحث عنه ام لا ، بل يقوم ايضا بالبحث داخل ب عن التكست بوكس الذي نريده

ربما عليك اختبار اولا اذا كان P.name تساوي "Textbox1" وعندها تخرج من For ايضا
الرد
تم الشكر بواسطة:
#3
يمكنك استخدام الدالة التالية لاحضار اي كونترول من اسمه في اي كونتينر كان

كود :
   Function GetControl(Parent As Control, Name As String) As Control
       For Each c As Control In Parent.Controls
           If c.Name = Name Then Return c
           Dim found = GetControl(c, Name)
           If Not found Is Nothing Then Return found
       Next
       Return Nothing
   End Function

استخدامها 

كود :
     Dim txt1 As TextBox = GetControl(Me, "TextBox1")
       Dim txt2 As TextBox = GetControl(Me, "TextBox2")
       Dim txt3 As TextBox = GetControl(Me, "TextBox3")
       Dim txt4 As TextBox = GetControl(Me, "TextBox4")

       txt1.Text = "txt1"
       txt2.Text = "txt2"
       txt3.Text = "txt3"
       txt4.Text = "txt4"

   
   
الرد
#4
أخي Anas Mahmoud
شكرا على المساعدة
جزاك الله من علمه
تقييمك هو أقل شيئ في حقك
الرد
#5
عفواً اخى sniperjawadino
ما الفرق بين الكود التى تريد استخدامه عن الكود البسيط المباشر لاعطاء قيمة
اذا كان الكود الخاص بك والكود الخاص بالاخ Anas Mahmoud
كل ما تفعله هو كتابة اكثر من سطر وليس هذا فقط وايضاً عمل لود متكرر بسبب For
لتكتب بالنهاية
text_.text - "anything"
بينما لو كتبت
textbox1.text = "anything"
سيكون الناتج والمعنى واحد للمطلوب وايضاً سيتم تقليل اللود على البرنامج
الرد
#6
(18-09-20, 02:50 PM)kiki كتب : عفواً اخى sniperjawadino
ما الفرق بين الكود التى تريد استخدامه عن الكود البسيط المباشر لاعطاء قيمة
اذا كان الكود الخاص بك والكود الخاص بالاخ Anas Mahmoud
كل ما تفعله هو كتابة اكثر من سطر وليس هذا فقط وايضاً عمل لود متكرر بسبب For
لتكتب بالنهاية
text_.text - "anything"
بينما لو كتبت
textbox1.text = "anything"
سيكون الناتج والمعنى واحد للمطلوب وايضاً سيتم تقليل اللود على البرنامج

افترض اما حالتان : 

اما ان الاخ يريد ان يقوم المستخدم باختيار الكونترول الذي يريد تعديله من اسمه ، وبالتالي لابد من طريقة للبحث عن الكونترول باسمه

او انه ينشأ كونترولات وقت التشغيل ويريد الوصول اليها من اسمها

والله اعلم طبعا
الرد
تم الشكر بواسطة: عبد الرؤوف
#7
شكرا أخي kiki و الأخ anas على المتابعة

كما قال الأخ أنس هذه الطريقة أظنها تنفع كثيرا في بعض المشاريع
هذفها هو الوصول إلى كونترول و التعديل فيه دون معرفة إسمه مسبقا
بل يتم الكشف عن إسمه عند إستعمال البرنامج
الرد
تم الشكر بواسطة: Anas Mahmoud , عبد الرؤوف


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [كود] جعل التاكست بوكس يكتب في سطر واحد zazasami 3 196 30-06-21, 09:31 AM
آخر رد: ابو انس
  السلام عليكم عندي سؤال في الليست بوكس اليوم السابع 1 298 21-06-21, 02:35 PM
آخر رد: alfaiz678
  الرجاء من رواد البرمجة في المنتدي بخصوص استعاء بيانات من موقع لتكست بوكس نور الهدى الهدى 2 494 16-06-21, 09:08 PM
آخر رد: نور الهدى الهدى
  اريد كود الكتابة في ملف txt في مكان محدد العواجي 0 168 10-06-21, 04:23 AM
آخر رد: العواجي
  [سؤال] اظهار قائمة منسدلة تحت تيكست بوكس خالد20 3 346 09-06-21, 02:18 AM
آخر رد: خالد20
  اظهار اسم السيرفر في كومبو بوكس momani33 1 203 04-06-21, 02:29 PM
آخر رد: ابو انس
  [سؤال] سؤال في تكست بوكس حسن الجلب 5 407 25-05-21, 09:39 PM
آخر رد: aljzazy
  كود منع ادخال ارقام او حروف داخل التيكست بوكس ابو نور الهدى 2 447 01-05-21, 06:15 AM
آخر رد: أبووسم
  [سؤال] هل يوجد margin داخلي للتكست بوكس ؟ kafi2030 11 4,723 27-04-21, 09:46 PM
آخر رد: wasfi
  [VB.NET] اضافة عناصر من اليست بوكس1 الي ليست بوكس اخر2 محمد اسماعيل 2 447 10-04-21, 01:59 AM
آخر رد: محمد اسماعيل

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم