我需要在地图图片上放置图标。 由于地图图像大于我的屏幕分辨率1280 x 1024,因此显示了水平滚动条。
我使用位置x和y来放置图标,但问题是: 当水平滚动条位于最左侧位置时,在位置(0,0)处放置图标与水平滚动条位于最右侧位置时不同...
如果我将滚动条移动到x轴(右)10那么 在(0,0)处放置一个图标应该是(0,0),但它放在(10,0)。
在这种情况下,有什么不同的方法吗? 或者我应该考虑滚动条移动了多少?如果是的话,我该怎么做?
希望我的解释有道理。谢谢,
答案 0 :(得分:0)
是的,这有点烦人。如果容器控件支持滚动,则只要在子控件上设置“位置”,就必须考虑其当前位置。假设您正在使用自动滚动,并且您想要将孩子放在x,y。然后你的容器Control可以使用这样的代码:
Point p = new Point(x, y);
p.Offset(AutoScrollPosition);
child.Location = p;