تقييم الموضوع :
  • 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 , عبد الرؤوف


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  حفظ ما بداخل الليست بوكس بهذه الطريقة ابو روضة 8 216 01-12-20, 01:22 AM
آخر رد: ابو روضة
  [VB.NET] كيف أجعل التكست بوكس يغير لونه حسب القيم Necro PC 2 145 20-11-20, 01:31 PM
آخر رد: Necro PC
  [VB.NET] فتح أداة webbrowser بإستخدام فايرفوكس أو كروم صالح حمادي 5 759 12-11-20, 11:57 PM
آخر رد: صالح حمادي
  طريقة جمع ارقام من تكست بوكس دفعة واحدة Codack 2 197 02-11-20, 03:14 AM
آخر رد: Codack
  تغيير نص التكست بوكس في كريستال ريبورت Mohammed Nafa 0 173 27-10-20, 08:56 PM
آخر رد: Mohammed Nafa
  سؤال في التشيك بوكس اليوم السابع 3 192 24-10-20, 03:44 AM
آخر رد: kiki
  [سؤال] مشكل مع أداة ReportViewer HUNTER25 0 152 07-10-20, 10:30 PM
آخر رد: HUNTER25
  [VB.NET] عمل اتاش و تحديث قاعدة البيانات بعد التعديل على الحقول دون ضياع السجلات برمجيا larbihamri 4 353 06-10-20, 03:33 PM
آخر رد: larbihamri
  سؤال بخصوص رتش تكست بوكس abdou 5 373 04-10-20, 01:54 PM
آخر رد: abdou
Heart [سؤال] السلام علام مطلوب طريقة التحقق من كول الكلمة المتكرار في اليسة بوكس وضعها في التيكس ب Ali 2020 0 352 01-10-20, 12:38 AM
آخر رد: Ali 2020

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


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