当控件可能在其他控件(如面板)中时,是否有任何方法检索控件在窗体中的位置?
控件的“左”和“顶”属性只给出它在其父控件中的位置,但是如果我的控件位于五个嵌套面板中,而我需要它在窗体上的位置,怎么办?
快速示例:
按钮btnA位于面板pnlB内的坐标(10,10)上。
面板pnlB位于表格frmC内的坐标(15,15)上。
我想要btnA在frmC上的位置,是(25,25)。
我能知道这个位置吗?
发布于 2018-04-18 15:37:06
我通常用PointToScreen
和PointToClient
:
Point locationOnForm = control.FindForm().PointToClient(
control.Parent.PointToScreen(control.Location));
发布于 2018-04-18 15:47:59
你可以使用这些控件。PointToScreen
方法获取相对于屏幕的绝对位置。
你可以做表格PointToScreen
方法,并使用基本数学,得到控件的位置。
https://stackoverflow.com/questions/-100004432
复制相似问题