聆听谷歌地球com api中的Mouseevents的样板代码
-
02-10-2019 - |
题
我正在尝试使用BrowserControl和Igeplugin在Windows表单应用中获得鼠标的LAT/LON位置。有人知道吗?
解决方案
如果您使用免费的winforms geplugin控制库y-只需按照以下简单的步骤
您需要告诉Web浏览器对象您想收听Mousemove事件
geWebBrowser.AddEventListener(gePlugin.getGlobe(), "mousemove");
然后,您需要设置一些事件处理程序。下面的代码应该易于阅读。您可以从domousemove方法中的mouseevent参数确定鼠标光标的lat / long / long
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)
{
}
不隶属于 StackOverflow