Показать полную графическую версию : [решено] Запретить перемещение формы по одной из координат
Нужна идея реализации, не соображу в каком направлении копать.
Grabber2006
28-04-2015, 17:21
Идея реализации:
const formpositionx; {расположение по горизонтали - константа}
form.x changed event; {событие изменения оси x}
event handler (var x) {обработчик события}
if x<>formpositionx then x := formpositionx;
PS: Язык выдуманный (больше похож на Паскаль)
Пока что получилось вот так:
private void Form_MouseDown(object sender, MouseButtonEventArgs e)
{
this.DragMove();
if (!(Form.Top == 0))
Form.Top = 0;
}
Это Visual Studio 2013. WPF C#. Знакомство со студией непродолжительное совсем.
При данном варианте таскать форму можно в любой место, но при отпускании мышки форма отпрыгивает к краю экрана.
А вот какое событие обработать, чтобы координата Y вообще не менялась, не сообразил.
Но всё равно, спасибо.
Grabber2006
29-04-2015, 11:44
У формы есть LocationChanged, если написать обработчик:
private void handelr1(object sender, EventArgs e)
{
if (!(this.Top == 0))
this.Top = 0;
}
То она "приклеивается" к верхнему краю экрана. VS2012
Я, кстати, пробовал обработать это событие. Почему-то не сработало, вот и стал спрашивать. Наверно, ошибка где-то была.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.