تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[كود] كيف تفتح نفس الفورم اكثر من مرة
#1
بسم الله الرحمن الرحيم
------------------------------------------------
اخواني عندي استفسار وكود ابحث عنه منذو شهور ارجوكم افيدوني اولا مكونات برنامجي هي :
1- ويب براوزر
2-قائمة بها اوامر
عند الضغط علي احدي هذه الاوامر يقوم بفتح صفحة ويب داخل اداة ويب براوزر
المطلوب :
اريد عند الضغط علي امر معين في "القائمة" ان البرنامج يصنع فورم جديد يكون به اداة ويب براوزر ويفتح نفس الرابط الذي كان مفتوح عندما ضغطت علي الامر ويكون اسم الفورم هو نفس اسم الامر الذي ضغط عليه

ارجوكم افيدوني
الرد }}}
تم الشكر بواسطة:
#2
فيه أكثر من أسلوب لتنفيذ ما تريد و أحدها هو أن تستخدم GCHandle كالأتي


PHP كود :
Private Function CreateForm() As Form
        Dim gc 
As GCHandle
        gc 
GCHandle.Alloc(New Form2)
 
       Return gc.Target
        gc
.Free()
 
   End Function 


الكود التالي يوضح كيف تستخدم الكود


PHP كود :
       Dim f As Form2 CreateForm()
 
       f.Show() 
الرد }}}
تم الشكر بواسطة:
#3
جرب هذا الكود
كود :
#Region " CreateNewFormWithWebBroswer(url As Uri) "
    Private Sub CreateNewFormWithWebBroswer(url As Uri)
        Dim frm As New Form With {.RightToLeft = RightToLeft.Yes, .RightToLeftLayout = True}
        AddHandler frm.FormClosing, AddressOf frmFormClosing
        Dim wb As New WebBrowser With {.Dock = DockStyle.Fill, .ScriptErrorsSuppressed = True}
        wb.Navigate(url)
        AddHandler wb.DocumentCompleted, AddressOf wb_DocComp
        frm.Controls.Add(wb)
        frm.Show()
    End Sub
    Private Sub wb_DocComp(sender As Object, e As WebBrowserDocumentCompletedEventArgs)
        sender.Parent.Text = sender.Document.Title
    End Sub
    Private Sub frmFormClosing(sender As Object, e As FormClosingEventArgs)
        sender.Dispose()
    End Sub
#End Region

طريقة استخدامه
كود :
Private Sub Button99_Click(sender As Object, e As EventArgs) Handles Button99.Click
    CreateNewFormWithWebBroswer(Me.WebBrowser1.Url)
End Sub
الرد }}}
تم الشكر بواسطة:
#4
(01-10-16, 01:28 AM)ممدوح كتب : جرب هذا الكود
كود :
#Region " CreateNewFormWithWebBroswer(url As Uri) "
   Private Sub CreateNewFormWithWebBroswer(url As Uri)
       Dim frm As New Form With {.RightToLeft = RightToLeft.Yes, .RightToLeftLayout = True}
       AddHandler frm.FormClosing, AddressOf frmFormClosing
       Dim wb As New WebBrowser With {.Dock = DockStyle.Fill, .ScriptErrorsSuppressed = True}
       wb.Navigate(url)
       AddHandler wb.DocumentCompleted, AddressOf wb_DocComp
       frm.Controls.Add(wb)
       frm.Show()
   End Sub
   Private Sub wb_DocComp(sender As Object, e As WebBrowserDocumentCompletedEventArgs)
       sender.Parent.Text = sender.Document.Title
   End Sub
   Private Sub frmFormClosing(sender As Object, e As FormClosingEventArgs)
       sender.Dispose()
   End Sub
#End Region

طريقة استخدامه
كود :
Private Sub Button99_Click(sender As Object, e As EventArgs) Handles Button99.Click
   CreateNewFormWithWebBroswer(Me.WebBrowser1.Url)
End Sub
شكرا شغال تمام لكن مكان اسم الفورم فاضي ليه
الرد }}}
تم الشكر بواسطة:
#5
كيف اقوم بارسال بيانات في جدوال واحد وارسالها الى web server انا محتاجة للمساعدة ضروري
الرد }}}
تم الشكر بواسطة:
#6
ماذا تقصد باسم الفورم؟
الرد }}}
تم الشكر بواسطة:
#7
اسم الفورم الذي سينشئ جديد اريد ان اضع له اسم ثابت
الرد }}}
تم الشكر بواسطة:
#8
برضو ما فهمت قصدك بالاسم، هل تقصد عنوان الفورم، إذا كذلك هذا التعديل
كود :
#Region " CreateNewFormWithWebBroswer(url As Uri) "
    Private Sub CreateNewFormWithWebBroswer(url As Uri)
        Dim frm As New Form With {.RightToLeft = RightToLeft.Yes, .RightToLeftLayout = True, .Text = "عنوان الفورم"}
        AddHandler frm.FormClosing, AddressOf frmFormClosing
        Dim wb As New WebBrowser With {.Dock = DockStyle.Fill, .ScriptErrorsSuppressed = True}
        wb.Navigate(url)
        AddHandler wb.DocumentCompleted, AddressOf wb_DocComp
        frm.Controls.Add(wb)
        frm.Show()
    End Sub
    Private Sub frmFormClosing(sender As Object, e As FormClosingEventArgs)
        sender.Dispose()
    End Sub
#End Region
الرد }}}
تم الشكر بواسطة: أبو عمر
#9
طيب اخي الكود لم يتماشي مع اداة GeckoWebBrowser ممكن تعدله
الرد }}}
تم الشكر بواسطة:
#10
لم أتعامل مع GeckoWebBrowser
ولكن طالما أنها أداة لماذا لم تعمل، ما المشكلة التي حصلت؟
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تقسيم الفانورة الي اكثر من ورقة عبدالكريم برشدان 0 46 14-04-24, 12:00 AM
آخر رد: عبدالكريم برشدان
  [VB.NET] حفظ الفورم (Form) (البرنامج) بعد التغيير visualist2015 8 6,461 12-04-24, 04:07 AM
آخر رد: أبو جودة
Photo [VB.NET] مشكلة في شكل الفورم abuyazan 5 305 27-02-24, 09:38 PM
آخر رد: aljzazy
  [VB.NET] مشكلة ظهور textbox بعد حذفه من الفورم مبرمج صغير 1 1 231 27-01-24, 02:04 AM
آخر رد: مبرمج صغير 1
  [سؤال] كود اظهار رساله في حال وجود الرقم في اكثر من عمود مبرمج صغير 1 6 406 09-01-24, 01:41 AM
آخر رد: Taha Okla
  [VB.NET] تحويل التاريخ بين أداتين تايم بيكر في نفس الفورم محمد العموري 1 277 29-12-23, 10:44 PM
آخر رد: Kamil
  طريقة إسناد اكثر من جدول للكريستال ريبورت Adel27213 2 361 25-11-23, 11:51 PM
آخر رد: Adel27213
  [VB.NET] حذف اكثر من سطر محدد في جرد فيو h2551996 3 445 25-11-23, 12:30 PM
آخر رد: h2551996
  كيفية التحكم فى حجم الفورم من خلال الكود Ahmed.vb 4 514 11-10-23, 07:17 PM
آخر رد: bidaya
Photo [سؤال] كيف أقوم بإجبار التطبيق (الفورم) على حفظ الملف المستعاد من قاعدة البيانات SQL server salam82 3 470 20-09-23, 01:42 PM
آخر رد: salam82

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


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