منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] وضع إسم الفورم و إسم البانيل في متغير - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] وضع إسم الفورم و إسم البانيل في متغير (/showthread.php?tid=28721)



وضع إسم الفورم و إسم البانيل في متغير - sniperjawadino - 22-02-19

السلام عليكم



في إطار فهم بعض أكواد برمجة اللعاب


هل ممكن أن أضع إسم الفورم و إسم البانيل في متغير



بعد بحث طويل وجدت أحد الأكواد إجتهدت قليلا لكن لم ينجح الأمر

كود :
      Dim obj As Object = Activator.CreateInstance(Type.GetType("TEST." & Form.ActiveForm.Name))



       Dim _form As Form = CType(obj, Form)

   

       Dim _panel = _form.Controls.Item("Panel1")



RE: وضع إسم الفورم و إسم البانيل في متغير - elgokr - 22-02-19

مرحباً اخى sniperjawadino

قد لا اكون على استوعاب كامل لما تريد فعله
ولكن بنظرياً لما تمكنت من فهمه فى موضوعك فبكل ما يمكنك ان افيدك

ان تستخدم هذا الـ Function 
كود :
   Function EControls(ByRef c As Panel) As Form
       For Each e As Control In c.Controls
           If e.Focused Then
               e.Text = Nothing
           End If
       Next
       Return Nothing
   End Function

وتعال فى مكان الحدث المراد تنفيذ الكود به واستخدم الكود بهذا الشكل
كود :
       EControls(Panel1)

بكده كل ما هو فى اطار Panel1 عندما يكون التركيز على اداء محدد سيتم تفريغ النص به
اتمنى ان يكون هذا الكود المطلوب 

تحياتى لك
وتمنياتى لك التوفيق



RE: وضع إسم الفورم و إسم البانيل في متغير - sniperjawadino - 27-02-19

شكرا على الرد
هذه هي الفكرة أخي الكريم فقط قد يكون Panel  أيضا في فورم آخر 
ممكن إضافى متغير لاسم الفورم ؟؟؟؟
Function EControls(ByRef c As Panel) As Form



شكرا شكرا شكرا


RE: وضع إسم الفورم و إسم البانيل في متغير - elgokr - 27-02-19

الشكر لله والحمد لله
والحمد لله على كل حال

تحياتى لك
وتمنياتى لك التوفيق



RE: وضع إسم الفورم و إسم البانيل في متغير - sniperjawadino - 27-02-19

ممكن إضافى متغير لإسم الفورم ؟؟؟؟

Function EControls(ByRef c As Panel) As Form

قد يكون Panel  أيضا في فورم آخر 

أعتذر على الإزعاج


RE: وضع إسم الفورم و إسم البانيل في متغير - elgokr - 27-02-19

لا تحتاج لذذلك اخى الحبيب يكفى فى الحدث
يكون الامر على هذا النحو
كود :
       EControls(Form1.Panel1)

وبكده تكون تم تطبيق الامر على Form1 بينما زر الحدث مثلاُ فى Form2

تحياتى لك
وتمنياتى لك التوفيق



RE: وضع إسم الفورم و إسم البانيل في متغير - sniperjawadino - 01-03-19

والله أعذرني على ما أتعبتك فيه لمساعدتي
فقط أريد أن تفهم قصدي
وهو عدم معرفتي باسم الفورم حتى أكتبه   هل هو Form1    أو     Form2   أو   Form3 ......
لذلك أريد وضع إسم الفورم في متغير

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

لقد ساعدني أحد الأخوة جزاه الله كل خير في إيجاد الكود المناسب في منتدى نقطة التطور

حتى يستفيد الإخوة 

كود :
Dim x0 As Form = Form1 ' متغير للفورم
Dim x1 As Panel = Form1.Panel1 ' متغير للبانل
'Dim obj As Object() = {x0, x1} ' متغير صفيف من نوع اوبجكت يجمع الاثنين
For Each c0 As Control In x1.Controls ' سياخذ لفه ع جميع الادوات داخل البانل
   MsgBox(c0.Name)
Next

'Dim f As Form = DirectCast(obj(0), Form)
'MsgBox(f.Name)

'Dim p As Panel = DirectCast(obj(1), Panel)
'MsgBox(p.Name)


جزاك الله كل خير على مساعدتك أخي [b]elgokr[/b]