diff --git a/ProjectAirbus/ProjectAirbus/DrawningAirbus.cs b/ProjectAirbus/ProjectAirbus/DrawningAirbus.cs index a1f22e3..6d56340 100644 --- a/ProjectAirbus/ProjectAirbus/DrawningAirbus.cs +++ b/ProjectAirbus/ProjectAirbus/DrawningAirbus.cs @@ -67,9 +67,28 @@ public class DrawningAirbus /// public bool SetPictureSize(int width, int height) { - _pictureWidth = width; - _pictureHeight = height; - return true; + if (width > _drawningAirbusWidth && height > _drawningAirbusHeight) + { + _pictureWidth = width; + _pictureHeight = height; + if (_startPosX != null && _startPosY != null) + { + if (_startPosX.Value < 0) _startPosX = 0; + if (_startPosY.Value < 0) _startPosY = 0; + if (_startPosX.Value + _drawningAirbusWidth > _pictureWidth) + { + _startPosX = _pictureWidth - _drawningAirbusWidth; + } + if (_startPosY.Value + _drawningAirbusHeight > _pictureHeight) + { + _startPosY = _pictureHeight - _drawningAirbusHeight; + } + } + + return true; + } + return false; + } /// @@ -84,11 +103,13 @@ public class DrawningAirbus return; } - if (x + _drawningAirbusWidth > _pictureWidth.Value) { x = 0; } - if (y + _drawningAirbusHeight > _pictureHeight.Value) { y = 0; } - _startPosX = x; _startPosY = y; + + if (_startPosX + _drawningAirbusWidth > _pictureWidth.Value) { _startPosX = 0; } + if (_startPosY + _drawningAirbusHeight > _pictureHeight.Value) { _startPosY = 0; } + + } /// diff --git a/ProjectAirbus/ProjectAirbus/FormAirbus.cs b/ProjectAirbus/ProjectAirbus/FormAirbus.cs index 4ca834f..f5fb646 100644 --- a/ProjectAirbus/ProjectAirbus/FormAirbus.cs +++ b/ProjectAirbus/ProjectAirbus/FormAirbus.cs @@ -37,24 +37,6 @@ namespace ProjectAirbus pictureBoxAirbus.Image = bmp; } - /// - /// проверка, что объект влезает в размеры формы, если нет - форма увеличивается ровно так, чтобы вместить - /// - private void FormAirbusSizeChanged() - { - if (this.Width < _drawningAirbus._drawningAirbusWidth) - { - this.Width = _drawningAirbus._drawningAirbusWidth + 20; - _drawningAirbus.SetPictureSize(this.Width, this.Height); - } - - if (this.Height < _drawningAirbus._drawningAirbusHeight + 40) - { - this.Height = _drawningAirbus._drawningAirbusHeight + 40; - _drawningAirbus.SetPictureSize(this.Width, this.Height); - } - } - /// /// Обработка кнопки "создать" /// @@ -70,7 +52,6 @@ namespace ProjectAirbus Convert.ToBoolean(random.Next(0, 2)), Convert.ToBoolean(random.Next(0, 2))); _drawningAirbus.SetPictureSize(pictureBoxAirbus.Width, pictureBoxAirbus.Height); - FormAirbusSizeChanged(); _drawningAirbus.SetPosition(random.Next(10, 100), random.Next(10, 100));