第一次在这里海报。我一直在寻找特定于此的答案,但我没有运气。
我正在用 VB.NET 编写一个工具,用于记录在 ArcMap 的地图界面上任意位置绘制的矩形的边界坐标。除了“mouseup”释放坐标之外,我还需要记录“mousedown”点击坐标。
我在 mapinfo 中使用 mapbasic 做了同样的事情,这是最简单的事情:
' xy where user clicked
x1 = CommandInfo(CMD_INFO_X)
y1 = CommandInfo(CMD_INFO_y)
' xy where user released
x2 = CommandInfo(CMD_INFO_X2)
y2 = CommandInfo(CMD_INFO_y2)
' check and apply correct ordering of max/min x/y values
if x1 > x2 then
maxX = x1
minX = x2
else
maxX = x2
minX = x1
end if
if y1 > y2 then
maxY = y1
minY = y2
else
minY = y2
maxY = y1
end if
现在不幸的是,我似乎不能简单地在 VB.NET 中做到这一点。我得到的印象是我需要创建一堆子/类并使用事件才能正确执行,但我不知道从哪里开始。谁能帮我?请记住,我需要能够在地图界面上的任何地方执行此操作(即不在表单/图片框等内)。我正在使用视觉工作室 2012。
谢谢
-L