loading...
وی نت دات آی آر: دانلود نرم افزار,کتاب,بازی,فیلم,برنامه موبایل,فایل های آموزشی
آخرین ارسال های انجمن
Mohammad بازدید : 1594 یکشنبه 14 خرداد 1391 نظرات (0)

 


کنترل Web Browser – ساخت مرورگر صفحات وب

 

 

برنامه Internet Explorer يا iexplore.exe در واقع برنامه کوچکي است که وظيفه اصلي آن ايجاد چارچوبي براي بهم پيوستن عناصر مختلف است و اين عناصر هستند که وظايف اصلي مثل loadکردن صفحات وب ، اجراي کدهاي Html و غيره را انجام مي دهند . اصلي ترين عنصري که مستقيماً توسط iexplore.exe استفاده مي شود کنترل Webbrowser ( موجود در فايلshdocrw.dll ) مي باشد . وظيفه اين فايل dll ، عبارت است از حرکت بين صفحات وب ، مديريت تاريخچه صفحات ديده شده و غيره . اين فايل خود از فايل ديگري بنام Mshtml.dll استفاده مي کند که وظيفه آن بررسي و اجراي فايلهاي html است . مايکروسافت به برنامه نويسان اين امکان را داده که بتوانند در برنامه هايشان از کنترل webbrowser استفاده کنند . با استفاده از اين کنترل مي توان به سادگي يک مرورگر وب تقريباً کامل ساخت .



خصوصيات کنترل Webbrowser :


Webbrowser علاوه بر خواص استانداردي مثل width ، height و … خواص زير را دارد :


1 – Busy : اگر در حال load کردن يک صفحه يا در حال جستجو در وب باشد اين خاصيت Trueاست . توسط متد Stop مي توان عمليات جاري را متوقف کرد .


2 – Container : ارجاع به شي نگهدارنده کنترل webbrowser


3 – Document : ارجاع به صفحه html فعلي . براي کار با اين صفحه html مي توان از خواص و متدهابي شي Document استفاده کرد .


4 – LocationName : حاوي آدرس محلي است که اکنون در کنترل webbrowser ، load شده است . اگر اين محل يک صفحه html باشد عنوان آن صفحه خواهد بود و اگر اين محل يک فايل در شبکه باشد مسير کامل آن فايل خواهد بود .


5 – LocationURL : حاوي url محلي است که فعلاً در کنترل webbrowser ، load شده است .


6 – Offline : اگر کنترل webbrowser در حالت عدم اتصال باشد مقدار آن True و در غيراينصورتFalse است .


7 – Parent : فرمي را نشان مي دهد که کنترل webbrowser در آن قرار دارد .


8 – ReadyState : وضعيت کنترل webbrowser را برمي گرداند .



متدهاي کنترل webbrowser : اين متدها مربوط به مرور در صفحات وب هستند :


1- GoBack : در ليست تاريخچه url ها ، يکي به عقب برمي گردد .


2 – GoForward : در ليست تاريخچه url ها ، يکي به جلو مي رود .


3 – GoHome : به homepage مرورگر مي رود .


4 – Navigate : به يک url يا فايل مي رود . ساختار اين متد بصورت زير است :

 

Navigate URL [Flags,][TargetFrameName,][PostData,][Headers]x

 

URL آدرس مقصد مي باشد . Flags نحوه باز شدن آدرس مقصد را تعيين مي کند . اگر اين پارامتر ذکر نشود آدرس جديد در پنجره فعلي باز خواهد شد و به ليست تاريخچه اضافه شده و اگر کپي آن در temperory cache موجود باشد از آنجا خوانده مي شود . مقادير پارامتر Flags عبارتند از :


NavOpenInNewWindow : آدرس جديد را در پنجره جديدي باز مي کند .


NavNoHistory : به ليست تاريخچه اضافه نمي شود بلکه جايگزين صفحه فعلي مي شود .


NavNoReadFromCache : صفحه جديد از cache خوانده نمي شود .


NavNoWriteToCache : صفحه جديد روي cache نوشته نمي شود



Event هاي کنترل webbrowser : اين event ها مربوط به مرور در وب و تغيير حالت آن هستند :


1 – CommandStateChange : براي فعال يا غيرفعال کردن دکمه هاي Forward و Back در مرورگر استفاده مي شود . شکل کلي فراخواني اين event بصورت زير است :

 

Private Sub WebBrowser1_CommandStateChange(ByVal Command As Long, ByVal Enable As Boolean)


که command فرماني است که حالت فعال آن تغيير کرده است و دو مقدار مي گيرد : 1 و 3 که بترتيب معادل فرمانهاي GoForward و GoBack هستند .


Enable فعال يا غيرفعال بودن فرمان را تعيين مي کند .


2 – DocumentComplete : اين event زماني فعال مي شود که صفحه در حال load شدن به حالتReadyState_Complete برود . شکل کلي فراخواني اين event بصورت زير است :


Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)

 


که pDisp ارجاعي به کنترل webbrowser است که event در آن رخ داده است و URL آدرس صفحه در حال load شدن است .


3 – DownloadBegin : اين event در آغاز حرکت به صفحه جديد روي مي دهد و هيچ پارامتري نمي گيرد . مرورگر مي تواند در اين event پيغامي براي شروع عمليات جديد نشان مي دهد .


4 – DownloadComplete : اين event در پايان عمليات يا در صورت انصراف کاربر يا بروز خطا روي مي دهد .


5 – ProgressChange : با بروز هر تغييري در وضعيت load ، اين event روي مي دهد . شکل کلي فراخواني آن بصورت زير است :

 

Private Sub WebBrowser1_ProgressChange(ByVal Progress As Long, ByVal ProgressMaxAs Long)

 


که Progress نشان دهنده پيشرفت عمليات ( بايتهاي load شده ) است . پارامتر ProgressMaxتعداد کل بايتهايي که بايد load شوند را نشان مي دهد بنابر اين :

 

(Progress/ProgressMax)*100=درصد پيشرفت عمليات load

 


يک مثال ساده :


از منوي project مورد components را انتخاب کنيد و از ليست کنترلها ، Microsoft Internet Controls را به toolbar خود اضافه کنيد . يک کنترل WebBrowser روي فرم قرار دهيد و سايز آنرا به اندازه ابعاد فرم خود قرار دهيد . يک textbox و يک دکمه روي فرم قرار دهيد . کد زير را براي eventمربوط به کليک دکمه بنويسيد :

 

WebBrowser.Navigate textbox.text

 

 

ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • نویسندگان
    نظرسنجی
    کدام یک از دامنه های سایت را میپسندید؟
    آمار سایت
  • کل مطالب : 129
  • کل نظرات : 28
  • افراد آنلاین : 1
  • تعداد اعضا : 550
  • آی پی امروز : 22
  • آی پی دیروز : 28
  • بازدید امروز : 59
  • باردید دیروز : 32
  • گوگل امروز : 0
  • گوگل دیروز : 0
  • بازدید هفته : 221
  • بازدید ماه : 1,137
  • بازدید سال : 7,978
  • بازدید کلی : 535,367
  • کدهای اختصاصی