التنبيهات التالية ظهرت :
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 864 - File: showthread.php PHP 7.4.33 (Linux)
File Line Function
/showthread.php 864 errorHandler->error



تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
WebBrowser IN VB.NET
#1
السلام عليكم ورحمة الله وبركاته

تحية طيبة لاعضاء المنتدى الكرام و الادارة الطيبة و نسأل الله ان ينفعنا جميعاً بما علمنا
موضوع اليوم عن اداة واهم ما يتعلق بها من خصائص و احداث و اوامر و كيفيك التعامل معها بطريقة مرنه وبسيطه

[b]



اولاً : التعريف :

WebBrowser هي اداة تعمل عمل اي متصفح و بالاخص مثل المتصفح الشهير Internet Explorer
فهي تساعدك في تصفح المواقع من ناحية و التحكم في اكوادها HTML وكل ما يرتبط بها من ادخال و استخراج بيانات من ناحية اخرى.
واليكم هذا بالتفصيل >>


ثانياً : اهم الخصائص:

Name : اسم الاداة و الاسم الافتراضي هو 1 WebBrowser .

AllowNavigation : السماح للتصفح داخل الاداة وبها اختيارين :-
-True : السماح بالتصفح وهو الافتراضي .
-False : عدم السماح بالتصفح .

Dock : مكان الاداة و الازاحة الخاصه بها اي بمعنى مكان وجود الاداة في البرنامج دائما ثابته في الاعلى ام الاسفل ام اليسار ام اليمين ام الوسط ام حره (None).

Location : مكان الخاص بالاداة داخل البرنامج تبعا لخطوط الطول و العرض الموجوده داخل البرنامج
وهذه الخاصية لا تعمل الا اذا كانت الاداة حره في الخاصية Dock وبها حقلين :-
-X : المكان بالنسبه لخطوط العرض .
-Y : المكان بالنسبه لخطوط الطول .
-Locked : عدم تحريك الاداة ابدا من مكانها و بداخلها اختيارين :-
--True : تفعيل عدم تحريك الاداة ابدا .
--False : السماح بتحريك الاداة من مكانها .

Margin : الابتعاد عن الحواف وبها 4 حقول :-
-All : مقاس الابتعاد عن الحواف من جميع الجهات .
-Left : مقاس الابتعاد عن الحواف من جهة اليسار .
-Top : مقاس الابتعاد عن الحواف من الاعلى .
-Right : مقاس الابتعاد عن الحواف من جهة اليمين .
-Bottom : مقاس الابتعاد عن الحواف من الاسفل .

MaximumSize : الحد الاقصى لحجم الاداة وبها حقلين :-
-Width : مقاس العرض .
-Height : مقاس الطول .

MinimumSize : الحد الادنى لحجم الاداة و بها حقلين :-
-Width : مقاس العرض .
-Height : مقاس الطول .

ScrollBarsEnabled : خاصة بتفعيل شريط التمرير و بها حلقين :-
-True : السماح بتفعيل الشريط التمرير .
-False : عدم السماح بتفعيل الشريط التمرير .

Size : الحجم الحالي للاداة وبها اختيارين :-
-Width : مقاس العرض .
-Height : مقاس الطول.

TabStop : ايقاف استخدام زر Tab للتنقل داخل الاداة وبها اختيارين :-
-True : ايقاف تفعيل استخدام زر Tab .
-False : تفعيل استخدام زر Tab .

Url : رابط الموقع و لكن يجب اضافة //:http في بداية الرابط .

Visible : حالة الاداة من ناحية الظهور وبها اختيارين :--
-True : ظهور الاداة امام المستخدم .
-False : عدم ظهور الاداة اما المستخدم .


ثالثاً : اهم الاحداث(التصريحات) :

CanGoBackChanged : هذا الحدث خاص بحالة قدرة الاداة لتنفيذ امر الرجوع للصفحة السابقة ام لا ويمكن ايضا ان نستخدمها في تفعيل زر الرجوع او ايقافه .

CanGoForwardChanged : هذا الحدث خاص بحالة قدرة الاداة لتنفيذ امر الانتقال للامام (اي الصفحة التالية التي تم زيارتها من قبل) ام لا ويمكن ايضا ان نستخدمها في تفعيل زر الانتقال للامام او ايقافه .

DocumentCompleted : هذا الحدث خاص بما يحدث عندما تقوم الاداة باتمام فتح صفحة ما (اي تنفيذ اوامر عند الانتهاء من تحميل اي صفحة) .

DocumentTitleChanged : هذا الحدث خاص بما يحدث عندما يتغير عنوان الصفحة .
ملاحظة : عنوان الصفحة لمن لا يعرفه هو النص الذي يظهر في اعلى اي متصفح باسم الموقع ويكون موجود هذا النص داخل اكواد HTML الخاصة بالموقع داخل عنصر title على سبيل المثال : </title>هنا العنوان<title> .

Navigating : هذا الحدث خاص بما يحدث اثناء قيام الاداة بتحميل صفحة ما .

ProgressChanged : هذا الحدث خاص بمعرفة قيمة التغير(التحميل) الحادث اثناء تحميل اي صفحة .

StatusTextChanged : هذا الحدث خاص بمعرفة النص الخاص بحالة التصفح مثل تحميل صفحة ما او الانتهاء من تحميلها او عند الوقوف على رابط يظهر الرابط .


رابعاً : اهم الاكواد (هناك مثال مرفق به تطبيق شامل لكل هذه الخصائص و الاحداث و الاكواد)

اولاً : اكواد التصفح :-

فتح صفحة موقع
[/b]


كود :
WebBrowser1.Navigate("رابط الصفحة كامل")
[b]
فتح صفحة فارغة
[/b]


كود :
WebBrowser1.Navigate("about:blank")
[b]
الرجوع للصفحة السابقة
[/b]


كود :
WebBrowser1.GoBack()
[b]
الانتقال للصفحة التالية
[/b]


كود :
WebBrowser1.GoForward()
[b]
اعادة تحميل الصفحة
[/b]


كود :
WebBrowser1.Refresh()
[b]
ايقاف تحميل الصفحة
[/b]


كود :
WebBrowser1.Stop()
[b]


ثانياً : اكواد النوافذ الملحقة بالاداة :-

حفظ الصفحة
[/b]


كود :
Form1.WebBrowser1.ShowSaveAsDialog()
[b]
معاينة الصفحة قبل الطباعة
[/b]


كود :
Form1.WebBrowser1.ShowPrintPreviewDialog()
[b]
طباعة الصفحة
[/b]


كود :
Form1.WebBrowser1.ShowPrintDialog()
[b]
خصائص الصفحة
[/b]


كود :
Form1.WebBrowser1.ShowPropertiesDialog()
[b]
تنسيق الصفحة
[/b]


كود :
Form1.WebBrowser1.ShowPageSetupDialog()
[b]
رسالة تنبيه
[/b]


كود :
Form1.WebBrowser1.Document.Window.Alert("نص الرسالة")
[b]
فتح نافذة جديدة
[/b]


كود :
Dim url As String = WebBrowser1.Document.Url.ToString
Dim frm As New Form1
frm.Show()
frm.WebBrowser1.Navigate(url)
[b]

رقم اصدار الاداة
[/b]


كود :
MsgBox(WebBrowser1.Version.ToString)
[b]

خامساً : التعاملات النصية :-
قص النص المحدد
[/b]


كود :
Form1.WebBrowser1.Document.ExecCommand("cut", True, DBNull.Value)
[b]
نسخ النص المحدد
[/b]


كود :
Form1.WebBrowser1.Document.ExecCommand("copy", True, DBNull.Value)
[b]
لصق النص في المكان المُفعل
[/b]


كود :
Form1.WebBrowser1.Document.ExecCommand("paste", True, DBNull.Value)
[b]
البحث داخل نصوص الاداة
[/b]


كود :
Dim data As DataObject = Clipboard.GetDataObject 'الاحتفاظ بما تم نسخة
Form1.WebBrowser1.Document.ExecCommand("Copy", False, Nothing)
Form1.WebBrowser1.Focus()
SendKeys.SendWait("^f")
Clipboard.SetDataObject(data) 'ارجاع ما تم نسخة قبل عملية البحث
[b]

سادساً : التعامل مع محتوى الصفحة :-

اولاً : التعاملات العامة :-

استخراج نص الصفحة
[/b]


كود :
Form2.Text = "WebBrowser Get TEXT"
Form2.RichTextBox1.Text = WebBrowser1.Document.Body.InnerText
Form2.Show()
[b]
استخراج اكواد الصفحة
[/b]


كود :
Form2.Text = "WebBrowser Get HTML"
Form2.RichTextBox1.Text = WebBrowser1.Document.GetElementsByTagName("HTML").Item(0).OuterHtml        
Form2.Show()
[b]
تحويل الصفحة الى نص
[/b]


كود :
Form1.WebBrowser1.Document.Body.InnerText = RichTextBox1.Text
[b]
تحويل الصفحة الى اكواد او نص
[/b]


كود :
Form1.WebBrowser1.Document.Body.InnerHtml = RichTextBox1.Text
[b]
ثانياً : التعاملات الخاصة بعناصر الصفحة :-


اولاً : GetElementById

الاستخراج
[/b]


كود :
MsgBox(Form1.WebBrowser1.Document.GetElementById(رقم الاي دي).GetAttribute(اسم المطلوب محتواه))
[b]
الارسال
[/b]


كود :
Form1.WebBrowser1.Document.GetElementById(رقم الاي دي).SetAttribute(اسم المرسل اليه,النص المرسل)
[b]
الضغط
[/b]


كود :
Form1.WebBrowser1.Document.GetElementById(رقم الاي دي).InvokeMember("click")
[b]


ثانياً : GetElementsByTagName

الاستخراج
[/b]


كود :
If (Form1.WebBrowser1.Document IsNot Nothing) Then
           Dim Elems As HtmlElementCollection
           Dim WebOC As Windows.Forms.WebBrowser = Form1.WebBrowser1

           Elems = WebOC.Document.GetElementsByTagName(Tag اسم)

           For Each elem As HtmlElement In Elems
               Dim NameStr As String = elem.GetAttribute(اسم عنصر الاثبات)
               If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                   If NameStr.ToLower().Equals(محتوى عنصر الاثبات) Then
                       Dim ContentStr As String = elem.GetAttribute(اسم القيمة المطلوبة)
                       MessageBox.Show(ContentStr)
                   End If
               End If
           Next
       End If
[b]
الارسال
[/b]


كود :
If (Form1.WebBrowser1.Document IsNot Nothing) Then
           Dim Elems As HtmlElementCollection
           Dim WebOC As Windows.Forms.WebBrowser = Form1.WebBrowser1

           Elems = WebOC.Document.GetElementsByTagName(Tag اسم)

           For Each elem As HtmlElement In Elems
               Dim NameStr As String = elem.GetAttribute(اسم عنصر الاثبات)
               If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                   If NameStr.ToLower().Equals(محتوى عنصر الاثبات) Then
                       elem.SetAttribute(اسم المرسل اليه, النص المرسل)
                   End If
               End If
           Next
       End If
[b]
الضغط
[/b]


كود :
If (Form1.WebBrowser1.Document IsNot Nothing) Then
           Dim Elems As HtmlElementCollection
           Dim WebOC As Windows.Forms.WebBrowser = Form1.WebBrowser1

           Elems = WebOC.Document.GetElementsByTagName(Tag اسم)

           For Each elem As HtmlElement In Elems
               Dim NameStr As String = elem.GetAttribute(اسم عنصر الاثبات)
               If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                   If NameStr.ToLower().Equals(محتوى عنصر الاثبات) Then
                       elem.InvokeMember("click")

                   End If
               End If
           Next
       End If
[b]
ثالثا : All

الاستخراج
[/b]


كود :
MsgBox(Form1.WebBrowser1.Document.All().Item(CInt(الرقم التسلسلي للعنصر او الاي دي)).InnerHtml)
[b]
الارسال
[/b]


كود :
Form1.WebBrowser1.Document.All().Item(CInt(الرقم التسلسلي للعنصر او الاي دي)).InnerHtml = "النص"
[b]
الضغط
[/b]


كود :
Form1.WebBrowser1.Document.All().Item(CInt(الرقم التسلسلي للعنصر او الاي دي)).InvokeMember("click")
[b]

سابعاً : تطبيقات على الاحداث (التصريحات)

CanGoBackChanged
[/b]


كود :
If WebBrowser1.CanGoBack Then 'ان كانت الاداة قادرة على الرجوع للخلف
           Button1.Enabled = True ' تفعيل زر الرجوع للخلف
       Else 'وان كانت غير قادرة
           Button1.Enabled = False 'عدم تفعيل زر الرجوع للخلف
       End If
[b]
CanGoForwardChanged
[/b]


كود :
If WebBrowser1.CanGoForward Then 'ان كانت الاداة قادرة على الانتقال الى الصفحة التالية
           Button2.Enabled = True ' تفعيل زر الانتقال
       Else 'وان كانت غير قادرة
           Button2.Enabled = False 'عدم تفعيل زر الانتقال
       End If
[b]
DocumentCompleted
[/b]


كود :
TextBox1.Text = WebBrowser1.Url.ToString 'اظهار رابط الصفحة

       Button3.Enabled = True 'تفعيل زر اعادة التحميل
       Button4.Enabled = False 'الغاء تفعيل زر ايقاف تحميل الصفحة
[b]
DocumentTitleChanged
[/b]


كود :
title.Text = "TiTle : " & WebBrowser1.DocumentTitle ' عنوان الصفحة
[b]
Navigating
[/b]


كود :
Button3.Enabled = False 'الغاء تفعيل زر اعادة تحميل الصفحة
Button4.Enabled = True 'تفعيل زر ايقاف تحميل الصفحة
[b]
ProgressChanged
[/b]


كود :
ToolStripProgressBar1.Maximum = e.MaximumProgress ' تساوي اعلى قيمة انتهاء تحميل الصفحة ToolStripProgressBar1 جعل اعلى قيمة لاداة  
ToolStripProgressBar1.Value = e.CurrentProgress ' تساوي قيمة التحميل الحالية ToolStripProgressBar1 جعل القيمة الحالية لاداة
[b]
StatusTextChanged
[/b]


كود :
ToolStripLabel1.Text = WebBrowser1.StatusText ' يساوي نص الحالة الخاصة بالاداة  ToolStripLabel1 جعل نص
[b]


تم بحمد الله
المثال موجود بالمرفقات به تطبيق لكل هذه الاكواد

وان كان هناك اي تعقيب او مناقشة انا متواجد ان شاء الله

اخوكم/ مؤمن
[/b]



الملفات المرفقة
.zip   WebBrowser.zip (الحجم : 643.97 ك ب / التحميلات : 486)
الرد }}}


الردود في هذا الموضوع
WebBrowser IN VB.NET - بواسطة Raggi Tech - 18-09-12, 12:19 AM
RE: WebBrowser IN VB.NET - بواسطة CLARO - 02-06-16, 04:45 PM
WebBrowser IN VB.NET - بواسطة m.sami.ak_mybb_import4434 - 20-09-12, 01:41 AM
WebBrowser IN VB.NET - بواسطة Omar Mekkawy_mybb_import4421 - 20-09-12, 04:45 AM
WebBrowser IN VB.NET - بواسطة H111er - 20-09-12, 06:38 AM
WebBrowser IN VB.NET - بواسطة الليــث_mybb_import4420 - 20-09-12, 08:26 AM
WebBrowser IN VB.NET - بواسطة Raggi Tech - 20-09-12, 12:41 PM
WebBrowser IN VB.NET - بواسطة hossein - 26-09-12, 03:01 AM
WebBrowser IN VB.NET - بواسطة rinawi - 03-10-12, 12:57 PM
WebBrowser IN VB.NET - بواسطة moshax_mybb_import4748 - 03-10-12, 01:17 PM
WebBrowser IN VB.NET - بواسطة Raggi Tech - 03-10-12, 01:25 PM
WebBrowser IN VB.NET - بواسطة moshax_mybb_import4748 - 03-10-12, 03:02 PM
WebBrowser IN VB.NET - بواسطة elta - 05-10-12, 08:46 PM
WebBrowser IN VB.NET - بواسطة Easy 4ever - 05-10-12, 10:45 PM
WebBrowser IN VB.NET - بواسطة Raggi Tech - 05-10-12, 10:54 PM
WebBrowser IN VB.NET - بواسطة abdala_mybb_import4444 - 24-10-12, 09:55 PM
WebBrowser IN VB.NET - بواسطة sooriaty03 - 14-11-12, 03:21 PM
WebBrowser IN VB.NET - بواسطة محمد الساعدي - 29-11-12, 12:43 PM
WebBrowser IN VB.NET - بواسطة السكر المغرور - 03-12-12, 08:00 AM
WebBrowser IN VB.NET - بواسطة elta - 24-03-13, 06:48 PM
WebBrowser IN VB.NET - بواسطة mazen_mybb_import6524 - 29-03-13, 04:17 PM
WebBrowser IN VB.NET - بواسطة سامى ابوسريع - 01-04-13, 12:29 AM
WebBrowser IN VB.NET - بواسطة anasiq - 14-04-13, 06:51 PM
WebBrowser IN VB.NET - بواسطة shaker.soft - 25-05-13, 01:04 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كود عرص ملف الوورد داخل أدات WebBrowser alsaab120 1 1,081 26-03-23, 02:57 PM
آخر رد: sanyor77
  [سؤال] How to Setting the FileUpload value using VB.net inside of a WebBrowser Control dametucorazon 1 2,119 18-03-19, 08:58 PM
آخر رد: 5000

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


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