首先先來簡單介紹一下webbrowser控件,這個控件是可以實作在form窗體中添加網頁内容的。如圖,我在form中加入了百度api,(百度地圖api調用部落格裡有講)
使用這個控件其實很簡單
(1)第一步
隻要在form_load中輸入
webBrowser1.Navigate(Application.StartupPath + " /map.html");//引号中為網頁代碼存放位址,注意要用相對位址不用絕對位址,這樣才有可移植性,把網頁放到程式的debug目錄下,這樣就可以實作在vs中直接對網頁代碼進行修改
webBrowser1.ObjectForScripting = this; //顯示
(2)第二步
有些同學可能需要在form中調用一些webBrowser控件中的變量資料,這時候怎麼辦。比如說我要調用百度地圖中所測量的兩點間的距離。這時候首先在網頁檔案中加入如下代碼:
myDis.addEventListener("drawend", function(e) //這個是百度自帶的測量距離的代碼
{ result1=e.distance;
alert(result1);
});
function getdistance()//這一段自己寫的,傳回距離的值
{return result1;}
以上是web部分
然後在form中要想獲得web中的距離,要用如下代碼:
var s = webBrowser1.Document.InvokeScript("getdistance");//引号中是function的函數名,注意變量要用var型
然後通過 hight = Convert.ToInt32(s);就可以将var型轉換為int型,就可以随意引用了。
作者微信公衆号:凡人機器學習
長期分享機器學習實戰相關資訊,感謝關注!