2017-01-17 9 views
0

У меня проблема с моей картиной, оставив нижнюю часть моей формы. В основном я создаю мини-игру, где вы управляете своим кораблем клавишей со стрелкой и стрелкой вниз. Мне удалось помешать картинке покинуть верхнюю часть формы, но я не знаю, как это сделать для дна. Я гугл в течение нескольких часов, проверил здесь темы, но, похоже, не мог понять это. Другое дело, я помешала моя PictureBox покинуть верхнюю часть моей формы с линией:Предотвращение моего картинного ящика от выхода из нижней части моей формы

if (spaceship.Top < ClientRectangle.Top) spaceship.Top = ClientRectangle.Top; 

Хотя если кто-то держит клавишу со стрелкой вверх нажата, движение кажется довольно неуклюжим, но это работает.

Я пробовал использовать spaceship.Location.Y и модифицировал его, но не работал. Любая помощь будет принята с благодарностью.

ответ

0

Попробуйте ниже. Его легко понять. Высота клиента может быть максимальной (высота вершины космического корабля + высота космического корабля), если это больше означает, что она пошла ниже экрана. Таким образом, мы должны ограничить его в (высота клиента - высота космического корабля)

if (spaceship.Top + spaceship.Height > ClientRectangle.Height) 
    spaceship.Top = ClientRectangle.Height - spaceship.Height; 
+0

Спасибо большое, он работал, и объяснение довольно прямо вперед, так что теперь я, наконец, понять, что все о! –

+0

Если это сработало, пожалуйста, отметьте это как ответ, это также поможет другим. –