2015-11-14 1 views
0

У меня есть кнопка внутри панели управления. Когда я устанавливаю свитки на (0,0), верхняя (y) и верхняя (x) позиции вернутся, но при прокрутке кнопки y и x возвращаются относительно прокрутки. Как получить точные значения x и y даже при прокрутке панели?Как получить фактические x и y положения управления C#

public void call() 
{ 
    MessageBox.Show(button1.Left+","+button1.Top); 
} 

ответ

0

Я изменил свой код, чтобы он даст вам же координату независимо от положения прокрутки (но его зависимости от прокрутки управления, в этом случае панели)

MessageBox.Show((button1.Left + this.panel1.HorizontalScroll.Value)+ "," + (button1.Top + this.panel1.VerticalScroll.Value)); 
+0

Якоря положить кнопку крепится к одна позиция в зависимости от размера родителя. Поскольку кнопка является подвижной (ее можно настроить для перемещения в любом месте), привязка не является опцией. Любой другой способ и спасибо за ответ? – phpnet

+0

@phpnet, Да, привязка задает расстояние от края родителя как фиксированное. Как вы уже упоминали, кнопка является подвижной. то вы фактически меняете координацию X и Y, чтобы двигаться, они, конечно же, не будут (0,0) после повторного позиционирования кнопки. Так что, на мой взгляд, ваш код дает вам фактический X & Y. Вы ищете способ кодирования времени X и Y для временного хранения времени? Пожалуйста, напишите мне комментарий, если вы думаете, что я вас неправильно понял. – Kapoor

+0

(0,0) - это позиция прокрутки панели, а не кнопка, и нет. Я ищу координаты времени выполнения. – phpnet