تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] كيفية التعامل مع فورم جديد برمجيا
#1
vb.net
كيفية التعامل مع فورم جديد برمجيا
بمعنى
بفتح فورم بالكود دا
Dim frm As New form1
frm.Show()

ومن داخل form1
بفتح form2.show
وform2 فيه زر بيبعت نص لصندوق النص فى form1

بس لما بستخدم Dim frm As New form1
frm.Show()
النص مش بيضاف لصندوق النص فى الفورم الاخر

ولما بستخدم form1.Show()
النص بيتبعت عادى

المطلوب ازاى اقدر احدد الفورم المفتوح عشان اقدر ابعتله نص فى صندوق النص

اتمنى يكون السؤال واضح
الرد
تم الشكر بواسطة:
#2
على افتراض ان من داخل Form1 تم استدعاء Form2 ولكن عن طريق Dim frm As New Form2

الخطوة الاولى في الفورم Form1 طريقة استدعاء الفورم وتكون بالتعريف عن الفورم الحالي الذي فتح الفورم الآخر باستخدام Me بين القوسين مثل
PHP كود :
Dim frm As New Form2
frm
.Show(Me

الخطوة الثانية في الفورم frm المنشأ من Form2 تستخدم التعريف Me.Owner والذي يعبر عن الفورم الذي استدعى هذا الفورم ولكن هنا يجب تحويله باستخدام TryCast مع تحديد الفورم المطابق لمكوناته مثل
PHP كود :
TryCast(Me.OwnerForm1).TextBox1.Text "Hello world." 
الرد
تم الشكر بواسطة: LoveVb , الماجيك مسعد , الماجيك مسعد
#3
تفضل

كود :
        Dim frm As New Form
        Dim btn As New Button
        frm.Controls.Add(btn)
        frm.Show()
        AddHandler btn.Click, Sub()
                                  TextBox1.Text = "LoveVb"
                              End Sub
الْلَّهُم صَلِّ وَسَلِم وَبَارِك عَلَى سَيِّدِنَا مُحَمَّد
الرد
تم الشكر بواسطة: abdualla
#4
(02-04-17, 07:45 PM)abdualla كتب : على افتراض ان من داخل Form1 تم استدعاء Form2 ولكن عن طريق Dim frm As New Form2

الخطوة الاولى في الفورم Form1 طريقة استدعاء الفورم وتكون بالتعريف عن الفورم الحالي الذي فتح الفورم الآخر باستخدام Me بين القوسين مثل
PHP كود :
Dim frm As New Form2
frm
.Show(Me

الخطوة الثانية في الفورم frm المنشأ من Form2 تستخدم التعريف Me.Owner والذي يعبر عن الفورم الذي استدعى هذا الفورم ولكن هنا يجب تحويله باستخدام TryCast مع تحديد الفورم المطابق لمكوناته مثل
PHP كود :
TryCast(Me.OwnerForm1).TextBox1.Text "Hello world." 

فتحت فورم 2 من فورم 1 وعملت زى مانت قلت
بس فتحت فورم 3 من فورم 2
وجربت ارسل النص من 3 ل 2
ظهر خطأ فى owner ان قيمته فارغة nothing

(02-04-17, 07:51 PM)LoveVb كتب : تفضل

كود :
        Dim frm As New Form
        Dim btn As New Button
        frm.Controls.Add(btn)
        frm.Show()
        AddHandler btn.Click, Sub()
                                  TextBox1.Text = "LoveVb"
                              End Sub

للاسف لم افهم الكود
الرد
تم الشكر بواسطة:
#5
يجب عند كتابة هذا الكود تعريف القورم بمتغير Private في قمة الكلاس
لأنك ستحتاج أن تقوم بعمل Dispose له في مرحلة ما خاصة ان تركته مفتوحا مع الفورم الرئيسي
ثانيا يجب أن تقوم باعطاؤه صفات مثل اي كونترول أخر
والفورم مثله مثل اي كونترول أخر له اسم Name و له Handle
لذلك إما تعطيه اسما و تتعامل معه بهذا الاسم
او تتعامل معه عن طريق Handle الخاص به
الرد
تم الشكر بواسطة: الماجيك مسعد
#6
"
(14-06-17, 06:35 AM)silverlight كتب : \r\n\u064a\u062c\u0628 \u0639\u0646\u062f \u0643\u062a\u0627\u0628\u0629 \u0647\u0630\u0627 \u0627\u0644\u0643\u0648\u062f \u062a\u0639\u0631\u064a\u0641 \u0627\u0644\u0642\u0648\u0631\u0645 \u0628\u0645\u062a\u063a\u064a\u0631 Private \u0641\u064a \u0642\u0645\u0629 \u0627\u0644\u0643\u0644\u0627\u0633\r\n\u0644\u0623\u0646\u0643 \u0633\u062a\u062d\u062a\u0627\u062c \u0623\u0646 \u062a\u0642\u0648\u0645 \u0628\u0639\u0645\u0644 Dispose \u0644\u0647 \u0641\u064a \u0645\u0631\u062d\u0644\u0629 \u0645\u0627 \u062e\u0627\u0635\u0629 \u0627\u0646 \u062a\u0631\u0643\u062a\u0647 \u0645\u0641\u062a\u0648\u062d\u0627 \u0645\u0639 \u0627\u0644\u0641\u0648\u0631\u0645 \u0627\u0644\u0631\u0626\u064a\u0633\u064a\r\n\u062b\u0627\u0646\u064a\u0627 \u064a\u062c\u0628 \u0623\u0646 \u062a\u0642\u0648\u0645 \u0628\u0627\u0639\u0637\u0627\u0624\u0647 \u0635\u0641\u0627\u062a \u0645\u062b\u0644 \u0627\u064a \u0643\u0648\u0646\u062a\u0631\u0648\u0644 \u0623\u062e\u0631\r\n\u0648\u0627\u0644\u0641\u0648\u0631\u0645 \u0645\u062b\u0644\u0647 \u0645\u062b\u0644 \u0627\u064a \u0643\u0648\u0646\u062a\u0631\u0648\u0644 \u0623\u062e\u0631 \u0644\u0647 \u0627\u0633\u0645 Name \u0648 \u0644\u0647 Handle \r\n\u0644\u0630\u0644\u0643 \u0625\u0645\u0627 \u062a\u0639\u0637\u064a\u0647 \u0627\u0633\u0645\u0627 \u0648 \u062a\u062a\u0639\u0627\u0645\u0644 \u0645\u0639\u0647 \u0628\u0647\u0630\u0627 \u0627\u0644\u0627\u0633\u0645\r\n\u0627\u0648 \u062a\u062a\u0639\u0627\u0645\u0644 \u0645\u0639\u0647 \u0639\u0646 \u0637\u0631\u064a\u0642 Handle \u0627\u0644\u062e\u0627\u0635 \u0628\u0647\r\n[\/quote]\r\n\r\n\u0645\u0645\u0643\u0646 \u062a\u0648\u0636\u062d \u0628\u0627\u0644\u0643\u0648\u062f \u0644\u0643\u0649 \u0627\u0641\u0647\u0645 \u0627\u0643\u062b\u0631\u061f\r\n\r\n\u0645\u0639 \u0627\u0644\u0639\u0644\u0645 \u0639\u0645\u0644\u062a \u0645\u0634\u0631\u0648\u0639 \u062c\u062f\u064a\u062f \u0648\u062c\u0631\u0628 \u0648\u0646\u062c\u062d \u0628\u0646\u0641\u0633 \u0627\u0644\u0637\u0631\u064a\u0642\u0629\r\n\r\n\u0648\u0644\u0643\u0646 \u0641\u0649 \u0645\u0634\u0631\u0648\u0639\u0649 \u0644\u0645 \u064a\u0646\u062c\u062d \u0645\u0639 \u0627\u0646\u0647\u0627 \u0646\u0641\u0633 \u0627\u0644\u0627\u0643\u0648\u0627\u062f"

[quote='abdualla' pid='96627' dateline='1491147919']
على افتراض ان من داخل Form1 تم استدعاء Form2 ولكن عن طريق Dim frm As New Form2

الخطوة الاولى في الفورم Form1 طريقة استدعاء الفورم وتكون بالتعريف عن الفورم الحالي الذي فتح الفورم الآخر باستخدام Me بين القوسين مثل
PHP كود :
Dim frm As New Form2
frm
.Show(Me

الخطوة الثانية في الفورم frm المنشأ من Form2 تستخدم التعريف Me.Owner والذي يعبر عن الفورم الذي استدعى هذا الفورم ولكن هنا يجب تحويله باستخدام TryCast مع تحديد الفورم المطابق لمكوناته مثل
PHP كود :
TryCast(Me.OwnerForm1).TextBox1.Text "Hello world." 

اعتذر منك اخى
وتسلم ايدك على الكود فهو يعمل بكفاءة

ولكن كان مشروعى يهنج قمت بتنظيفه واشتغل كودك
الحمدلله

تسلم ايدك
الرد
تم الشكر بواسطة:
#7
PHP كود :
Public Class Form1
    Private magicForm 
As Form

    Private Sub Form1_Load
(sender As ObjectAs EventArgsHandles MyBase.Load
        magicForm 
= New Form
        magicForm
.Name "Ahmed" ' أوي اي اسم
        magicForm.show
    End Sub


    ' 
هذا لو سوف تبقيه مفتوحا مع نهاية الفورم الرئيسي مثلا

    Private Sub Form1_FormClosing
(sender As ObjectAs FormClosingEventArgsHandles MyBase.FormClosing
        If magicForm IsNot Nothing Then
            magicForm
.Close()
 
           magicForm.Dispose()
 
           magicForm Nothing
        End 
If
 
   End Sub

    Private Sub Button1_Click
(sender As ObjectAs EventArgsHandles Button1.Click
        Dim f 
As Form TryCast(Control.FromChildHandle(magicForm.Handle), Form)
 
       f.Close()

 
   End Sub

End 
Class 
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة فى اختفاء فورم salah mansour 0 35 12-10-18, 01:47 AM
آخر رد: salah mansour
  [VB.NET] كيفية استخدام Newtonsoft.Json باصدارين مختلفين في solution with multiple projects الماجيك مسعد 3 68 09-10-18, 08:33 PM
آخر رد: الماجيك مسعد
  اي الطريقتين هي الأصح برمجيا ابراهيم ايبو 4 115 05-10-18, 10:40 PM
آخر رد: ابراهيم ايبو
  [سؤال] طلب كود اظهار فورم كل فتره معينه ScreamVoice 8 186 01-10-18, 12:45 PM
آخر رد: ScreamVoice
  التعامل مع الصور mostafa abied 2 57 28-09-18, 08:39 AM
آخر رد: حريف برمجة
  اظهار فورم بالتلاشي المتألق9 1 88 24-09-18, 07:48 PM
آخر رد: dasktop
  [سؤال] مشكلة في الكود في كيفية البحث داخل الداتا جريد من خلال صندوق نصي ؟ dametucorazon 3 166 23-09-18, 11:27 AM
آخر رد: elgokr
  كيفية التعامل عند حفظ سطر بقيمة فارغة وظهور رسالة خطأ؟ [ تم الحل ] Hazem1 2 101 23-09-18, 11:23 AM
آخر رد: elgokr
  كيفية عمل كشف حساب الخزينة لجرد النقدية ABDELLAH20181 22 742 21-09-18, 03:29 PM
آخر رد: ABDELLAH20181
  [VB.NET] استفسار :- التاكد من وجود سطر جديد في الملف dubai.eig 6 133 21-09-18, 08:25 AM
آخر رد: mrnooo2000

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


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