browsercontrol と IGEPlugin を使用して、Windows フォーム アプリでマウスの LAT/LON 位置を取得しようとしています。誰でも手がかりを得ましたか?
1 に答える
2
無料の Winforms Geplugin コントロール ライブラリを使用すれば、これはそれほど難しくありません。次の簡単な手順に従ってください。
mousemove イベントをリッスンすることを Web ブラウザー オブジェクトに伝える必要があります。
geWebBrowser.AddEventListener(gePlugin.getGlobe(), "mousemove");
次に、いくつかのイベント ハンドラーをセットアップする必要があります。以下のコードは読みやすいはずです。DoMouseMove メソッドの mouseEvent 引数から、マウス カーソルの緯度/経度を判断できます。
geWebBrowser.KmlEvent += GeWebBrowserKmlEvent;
private void GeWebBrowserKmlEvent(object sender, GEEventArgs e)
{
// if it is a mouse event
if (null != sender as IKmlMouseEvent)
{
handleKmlMouseEvents((IKmlMouseEvent)sender, e.Data);
}
else
{
MessageBox.Show(GEHelpers.GetTypeFromRcw(sender));
}
}
private void handleKmlMouseEvents(IKmlMouseEvent mouseEvent, string action)
{
string currentTarget = mouseEvent.getCurrentTarget().getType();
switch (action)
{
case "mousemove":
{
DoMouseMove(mouseEvent);
break;
}
case "click":
{
DoClick(mouseEvent, currentTarget);
break;
}
case "mousedown":
{
DoMouseDown(mouseEvent, currentTarget);
break;
}
case "mouseup":
{
DoMouseUp(mouseEvent);
break;
}
}
}
private void DoMouseMove(IKmlMouseEvent mouseEvent)
{
}
于 2010-07-14T15:54:21.893 に答える