zoukankan      html  css  js  c++  java
  • delphi 调用百度地图api

    一、调用javascript的方法

    两种:

    第一种:采用自编函数的方法

    function ExecuteJavaScript(WebBrowser:TWebBrowser; Code: string):Variant;
    var //发送脚本
    Document:IHTMLDocument2;
    Window:IHTMLWindow2;
    begin
    // execute javascript in webbrowser
    Document:=WebBrowser.Document as IHTMLDocument2;
    if not Assigned(Document) then Exit;
    Window:=Document.parentWindow;
    if not Assigned(Window) then Exit;
    try
    Result:=Window.execScript(Code,'JavaScript');
    except
    on E:Exception do raise Exception.Create('Javascript error '+E.Message+' in: '#13#10+Code);
    end;
    end;

    第二种:直接调用WebBrowser内置方法:

    WebBrowser1.OleObject.document.parentWindow.方法名();

    二、百度API的调用

    制作一个HTML文件

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的秘钥"></script>
    <title>百度地图测试</title>
    <style type="text/css">
    body, html,#allmap { 100%;height: 100%;overflow: hidden;margin:0;}
    </style>
    </head>
    <body>
    <div id="allmap"> </div>

    </body>
    </html>


    <script type="text/javascript">

    function setcenter(areaname){ //设置新的地图中心

    map.centerAndZoom(areaname,10);
    }

    var map = new BMap.Map("allmap"); //js 主程序,调起百度地图
    var point = new BMap.Point(116.404, 39.915);
    map.centerAndZoom(point,5);
    map.enableScrollWheelZoom();

    </script>

    三、DELPHI 中的实现方法:

    WebBrowser1.Navigate(ExtractFilePath(Application.ExeName)+'bmap.html');

    try
    ExecuteJavaScript(WebBrowser1,'setcenter("'+CenterCityname+'");');
    except
    on E:Exception do showmessage(E.Message);
    end;

    {

    或者:

    WebBrowser1.OleObject.document.parentWindow.setcenter(CenterCityname);

    }

  • 相关阅读:
    jenkins 简单实现php集成上线部署
    关于PHP7
    关于版本迭代的那些事
    confirmit中手机端不能直接给input设置disabled属性
    confirmit中Html Styles有一处bug(或者说是一个坑)
    vsCode快捷键大全
    vscode打不开文件夹或文件夹未响应
    js中排序方法sort() 和 reverse()
    js最简单的编写地点
    js对象转换为json格式时,js对象属性中有值为null和undefined注意事项
  • 原文地址:https://www.cnblogs.com/zhangzhifeng/p/6229131.html
Copyright © 2011-2022 走看看