VB NET在可滚动面板中查找对象位置的好方法是什么?

时间:2018-04-10 02:57:35

标签: vb.net winforms

我在可滚动面板中有一个对象,我想获取对象的位置。一切都没问题,直到我在面板内创建了许多对象,直到需要滚动面板。然后我注意到滚动面板后对象的X位置发生了变化。看看下面的示例图片

X Position inside a scrollable panel

我正在使用Position.X来获取对象的X位置,但正如您在上图中所看到的那样。这对我没有好处。

即使面板滚动,有没有办法获得实际位置?

更新: 我有一个面板,其中Auto Scroll为True,而在Panel内的Button上,我们只是说按钮名称是Button1而Panel是Panel1

我用来获取Button1位置的代码是:

Dim msg = Button1.Location.X
msgbox(msg)

1 个答案:

答案 0 :(得分:0)

你正在获取对象的屏幕位置,我不知道是怎么回事,因为你没有发布你的代码。您需要做的是添加滚动偏移,例如

Position.X + scrollableControl.AutoScrollPosition.X