تقييم الموضوع :
  • 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 
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيفية الزيادة التلقائية لرصيد الإجازات في قاعدة البيانات الوايلي 2 45 أمس, 12:18 AM
آخر رد: الوايلي
Thumbs Up كيفية تشغيل وإغلاق الادوات الذكية لويندوز 7 عن طريق الكود رمضان محمد 14 1,461 19-01-18, 09:30 PM
آخر رد: رمضان محمد
  كيفية حفظ إعدادات البرنامج بحيث لا تتغير أحمد إبراهيم سعد 1 49 17-01-18, 08:49 AM
آخر رد: عبدالله الدوسري
  فتح فورم داخل حدود معينه محمود صالح 1 38 09-01-18, 04:26 PM
آخر رد: عبدالله الدوسري
  كيفية تغيير طريقة عرض التاريخ في الاداة DateTimePicker1 nooralcown 4 142 08-01-18, 01:47 PM
آخر رد: nooralcown
  [سؤال] كيفية حساب هذه القيمة ؟ Mohamed20 2 89 04-01-18, 04:31 PM
آخر رد: Mohamed20
  اريد كود غلق الفورم الحالى وفتح فورم اخر ali.alfoly 11 4,905 02-01-18, 08:20 PM
آخر رد: ابو روضة
  مساعده لدي فورم اريد اظهار الموديل بشرط النوع مراد بورجي 8 167 02-01-18, 07:58 PM
آخر رد: karimx
  كيفية جعل جميع date time picker الموجودة في الproject تاخذ من تاريخ السيرفر وليس الجه تناسيم 2 85 01-01-18, 04:57 PM
آخر رد: تناسيم
  كيفية ادراج ذر داخل textbox محمود صالح 1 70 01-01-18, 04:19 PM
آخر رد: طالب برمجة

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


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