2011-07-25 31 views
0

我正在做一個與GoogleMaps APi進行交互的Delphi傳輸應用程序,並且我想提出所有來自自動填充Google Maps API的「附近」名稱,當我輸入方向的起始地址時。將自動填充的googleMaps數據導入到Delphi組合框中

所有這些都將顯示在TCombobox中,並且會在OnChange屬性中進行更改。

這可能嗎?曾聽說過嗎???

非常感謝 Gwenael

回答

1

我首先想到的(假設它是基於遠程控制Web界面的方法)是:這可以通過使用TWebBrowser和朋友(IWebBrowser2,IHTMLElement等)來解決。在this question上查看我的回答以獲得此感受。您可以使用Embedded Web Browser from bsalsa輕鬆訪問所有Internet Explorer功能。

我的第二個想法是:這可能是官方API的一部分。但是,我不知道。如果沒有,那麼上述方法可能是(工作密集型)解決方法。

+2

如果您可以讓GoogleMaps爲自己完成所有工作,並使用瀏覽器,那麼這是一項很不完善的工作。然後,您可以通過從數據對象模型DOM中吸取數據,將其功能與應用程序集成。我會爲delphi調查bSalsa的TEmbeddedWB或ChromiumEmbeddedFramework(CEF)。 –

+0

@Gwenael - 我會這樣做;我的意思是讓網頁瀏覽器做什麼。還有很多完整的(有或沒有jQuery)例子,例如[this one](http://gmap3.net/examples/address-lookup.html),您可以簡單地將粘貼複製到應用程序的Web部分。關於從這種控制中獲取數據我不能告訴你什麼,但肯定會有一些標準控件。關於我的答案;這是一個解決方案,但考慮一下,您可以通過免費的API密鑰獲得1000次點擊的限制,而且您可以在打字時快速消費。 – 2011-07-25 20:14:53

+0

@Warren P +1提及CEF。不知道! –

2

有一部分Google地圖API名爲The Google Places Autocomplete API。您可以發送請求(在參考頁面的示例部分中,也有用於您目的的邊界的示例),因爲您將在組合框中鍵入(理想情況下,在短暫延遲修改拼寫錯誤之後)。因此,您可以接收JSON或XML格式的文件。解析完成後,您將看到相應建議的列表。

我不確定Google Maps API Key;如果可以在獨立應用程序中使用它(以及有關限制),因爲我還沒有實現Google Maps的靜態部分。