Location.X равен Top, Left в ListBox? - PullRequest
       0

Location.X равен Top, Left в ListBox?

2 голосов
/ 22 сентября 2011

Я немного запутался:

с кодом, подобным следующему: предположим, что поле списка находится внутри панели, а панель находится внутри tableLayout и т. Д. *

 Point myLocation = PointToClient(myListBox.Location);

, поэтому он возвращает Point.X и Point.Y, но что это за X и Y?они X и Y в верхнем левом углу моего списка в соответствии с формой в целом?

Ответы [ 2 ]

3 голосов
/ 22 сентября 2011

Да, Location.X = Left и Location.Y = Top. Left и Top - это просто ярлыки для удобства.

1 голос
/ 22 сентября 2011

Ваш звонок в PointToClient неправильный.PointToClient берет точку в экранных координатах и ​​преобразует их в координаты относительно элемента управления, для которого вы вызываете PointToClient.myListBox.Location возвращает клиентские координаты относительно его контейнера, а не экранные координаты.

Если вы хотите преобразовать в экранные координаты, посмотрите на использование PointToScreen ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...