diff --git a/Airbus/Airbus/Airbus.csproj b/Airbus/Airbus/Airbus.csproj
index b57c89e..13ee123 100644
--- a/Airbus/Airbus/Airbus.csproj
+++ b/Airbus/Airbus/Airbus.csproj
@@ -8,4 +8,19 @@
enable
+
+
+ True
+ True
+ Resources.resx
+
+
+
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+
+
+
\ No newline at end of file
diff --git a/Airbus/Airbus/Direction.cs b/Airbus/Airbus/Direction.cs
new file mode 100644
index 0000000..3276803
--- /dev/null
+++ b/Airbus/Airbus/Direction.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Airbus
+{
+ //направление перемещения
+ internal enum Direction
+ {
+ Up = 1,
+ Down = 2,
+ Left = 3,
+ Right = 4
+ }
+}
diff --git a/Airbus/Airbus/DrawingAirbus.cs b/Airbus/Airbus/DrawingAirbus.cs
new file mode 100644
index 0000000..618c64e
--- /dev/null
+++ b/Airbus/Airbus/DrawingAirbus.cs
@@ -0,0 +1,154 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Airbus
+{
+ //класс, отвечающий за прорисовку и перемещение объект
+ internal class DrawingAirbus
+ {
+ public EntityAirbus Airbus { get; private set; } //класс-сущность
+
+ private float _startPosX; //левая координата отрисовки
+
+ private float _startPosY; //верхняя координата отрисовки
+
+ private int? _pictureWidth = null; //ширина окна отрисовки
+
+ private int? _pictureHeight = null; //высота окна отрисовки
+
+ protected readonly int _airbusWidth = 50; //ширина отрисовки самолёта
+
+ protected readonly int _airbusHeight = 16; //высота отрисовки самолёта
+
+ //инициализаци свойств
+ public void Initial(int speed, float weight, Color corpusColor)
+ {
+ Airbus = new EntityAirbus();
+ Airbus.Initial(speed, weight, corpusColor);
+ }
+
+ //установка координат позиции самолёта
+ public void SetPosition(int x, int y, int width, int height)
+ {
+ if (x < 0 || y < 0 || width < x + _airbusWidth || height < y + _airbusHeight)
+ {
+ _pictureHeight = null;
+ _pictureWidth = null;
+
+ return;
+ }
+
+ _startPosX = x;
+ _startPosY = y;
+ _pictureWidth = width;
+ _pictureHeight = height;
+ }
+
+ //изменение направления движения
+ public void MoveTransport(Direction direction)
+ {
+ if (!_pictureWidth.HasValue || !_pictureHeight.HasValue)
+ {
+ return;
+ }
+
+ switch (direction)
+ {
+ case Direction.Right: //вправо
+ if (_startPosX + _airbusWidth + Airbus.Step < _pictureWidth)
+ {
+ _startPosX += Airbus.Step;
+ }
+ break;
+
+ case Direction.Left: //влево
+ if (_startPosX - _airbusWidth - Airbus.Step > 0)
+ {
+ _startPosX -= Airbus.Step;
+ }
+ break;
+
+ case Direction.Up: //вверх
+ if (_startPosY - _airbusHeight - Airbus.Step > 0)
+ {
+ _startPosY -= Airbus.Step;
+ }
+ break;
+
+ case Direction.Down: //вниз
+ if (_startPosY + _airbusHeight + Airbus.Step < _pictureHeight)
+ {
+ _startPosY += Airbus.Step;
+ }
+ break;
+ }
+ }
+
+ //отрисовка самолёта
+ public void DrawTransport(Graphics g)
+ {
+ if (_startPosX < 0 || _startPosY < 0 || !_pictureHeight.HasValue || !_pictureWidth.HasValue)
+ {
+ return;
+ }
+
+ Pen pen = new(Color.Black);
+
+ //корпус
+ g.DrawRectangle(pen, _startPosX, _startPosY + 10, 40, 10);
+
+ //крыло
+ Brush darkBrush = new SolidBrush(Color.Black);
+ g.FillRectangle(darkBrush, _startPosX + 10, _startPosY + 13, 20, 2);
+ g.FillRectangle(darkBrush, _startPosX + 12, _startPosY + 15, 16, 2);
+
+ //хвостовое крыло
+ g.DrawLine(pen, _startPosX, _startPosY + 10, _startPosX, _startPosY);
+ g.DrawLine(pen, _startPosX, _startPosY, _startPosX + 10, _startPosY + 10);
+
+ //заднее поперечное крыло
+ g.FillEllipse(darkBrush, _startPosX - 3, _startPosY + 7, 10, 5);
+
+ //нос самолёта
+ g.DrawLine(pen, _startPosX + 40, _startPosY + 15, _startPosX + 50, _startPosY + 16);
+ g.DrawLine(pen, _startPosX + 40, _startPosY + 10, _startPosX + 47, _startPosY + 15);
+ g.DrawLine(pen, _startPosX + 40, _startPosY + 20, _startPosX + 50, _startPosY + 15);
+
+ //задние шасси
+ g.FillRectangle(darkBrush, _startPosX + 10, _startPosY + 21, 2, 2);
+ g.FillRectangle(darkBrush, _startPosX + 12, _startPosY + 23, 4, 4);
+ g.FillRectangle(darkBrush, _startPosX + 8, _startPosY + 23, 2, 4);
+
+ //переднее шасси
+ g.FillRectangle(darkBrush, _startPosX + 35, _startPosY + 21, 2, 2);
+ g.FillRectangle(darkBrush, _startPosX + 35, _startPosY + 23, 4, 4);
+ }
+
+ //смена границ формы отрисовки
+ public void ChangeBorders(int width, int height)
+ {
+ _pictureWidth = width;
+ _pictureHeight = height;
+
+ if (_pictureWidth <= _airbusWidth || _pictureHeight <= _airbusHeight)
+ {
+ _pictureWidth = null;
+ _pictureHeight = null;
+ return;
+ }
+
+ if (_startPosX + _airbusWidth > _pictureWidth)
+ {
+ _startPosX = _pictureWidth.Value - _airbusWidth;
+ }
+
+ if (_startPosY + _airbusHeight > _pictureHeight)
+ {
+ _startPosY = _pictureHeight.Value - _airbusHeight;
+ }
+ }
+ }
+}
diff --git a/Airbus/Airbus/EntityAirbus.cs b/Airbus/Airbus/EntityAirbus.cs
new file mode 100644
index 0000000..c2beb31
--- /dev/null
+++ b/Airbus/Airbus/EntityAirbus.cs
@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Airbus
+{
+ internal class EntityAirbus
+ {
+ public int Speed { get; private set; } //скорость
+
+ public float Weight { get; private set; } //вес
+
+ public Color CorpusColor { get; private set; } //цвет корпуса
+
+ public float Step => Speed * 100 / Weight; //шаг перемещения самолёта
+
+ public void Initial(int speed, float weight, Color corpusColor)
+ {
+ Speed = speed;
+ Weight = weight;
+ CorpusColor = corpusColor;
+ }
+ }
+}
diff --git a/Airbus/Airbus/Form1.Designer.cs b/Airbus/Airbus/Form1.Designer.cs
index 61670a6..412c891 100644
--- a/Airbus/Airbus/Form1.Designer.cs
+++ b/Airbus/Airbus/Form1.Designer.cs
@@ -3,12 +3,12 @@
partial class Form1
{
///
- /// Required designer variable.
+ /// Required designer variable.
///
private System.ComponentModel.IContainer components = null;
///
- /// Clean up any resources being used.
+ /// Clean up any resources being used.
///
/// true if managed resources should be disposed; otherwise, false.
protected override void Dispose(bool disposing)
@@ -23,17 +23,159 @@
#region Windows Form Designer generated code
///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
///
private void InitializeComponent()
{
- this.components = new System.ComponentModel.Container();
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
+ this.pictureBoxAirbus = new System.Windows.Forms.PictureBox();
+ this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+ this.toolStripStatusLabelSpeed = new System.Windows.Forms.ToolStripStatusLabel();
+ this.toolStripStatusLabelWeight = new System.Windows.Forms.ToolStripStatusLabel();
+ this.toolStripStatusLabelCorpusColor = new System.Windows.Forms.ToolStripStatusLabel();
+ this.buttonCreate = new System.Windows.Forms.Button();
+ this.buttonUp = new System.Windows.Forms.Button();
+ this.buttonLeft = new System.Windows.Forms.Button();
+ this.buttonDown = new System.Windows.Forms.Button();
+ this.buttonRight = new System.Windows.Forms.Button();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxAirbus)).BeginInit();
+ this.statusStrip1.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // pictureBoxAirbus
+ //
+ this.pictureBoxAirbus.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.pictureBoxAirbus.Location = new System.Drawing.Point(0, 0);
+ this.pictureBoxAirbus.Name = "pictureBoxAirbus";
+ this.pictureBoxAirbus.Size = new System.Drawing.Size(800, 424);
+ this.pictureBoxAirbus.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
+ this.pictureBoxAirbus.TabIndex = 0;
+ this.pictureBoxAirbus.TabStop = false;
+ //
+ // statusStrip1
+ //
+ this.statusStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
+ this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.toolStripStatusLabelSpeed,
+ this.toolStripStatusLabelWeight,
+ this.toolStripStatusLabelCorpusColor});
+ this.statusStrip1.Location = new System.Drawing.Point(0, 424);
+ this.statusStrip1.Name = "statusStrip1";
+ this.statusStrip1.Size = new System.Drawing.Size(800, 26);
+ this.statusStrip1.TabIndex = 1;
+ this.statusStrip1.Text = "statusStrip1";
+ //
+ // toolStripStatusLabelSpeed
+ //
+ this.toolStripStatusLabelSpeed.Name = "toolStripStatusLabelSpeed";
+ this.toolStripStatusLabelSpeed.Size = new System.Drawing.Size(76, 20);
+ this.toolStripStatusLabelSpeed.Text = "Скорость:";
+ //
+ // toolStripStatusLabelWeight
+ //
+ this.toolStripStatusLabelWeight.Name = "toolStripStatusLabelWeight";
+ this.toolStripStatusLabelWeight.Size = new System.Drawing.Size(36, 20);
+ this.toolStripStatusLabelWeight.Text = "Вес:";
+ //
+ // toolStripStatusLabelCorpusColor
+ //
+ this.toolStripStatusLabelCorpusColor.Name = "toolStripStatusLabelCorpusColor";
+ this.toolStripStatusLabelCorpusColor.Size = new System.Drawing.Size(45, 20);
+ this.toolStripStatusLabelCorpusColor.Text = "Цвет:";
+ //
+ // buttonCreate
+ //
+ this.buttonCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.buttonCreate.Location = new System.Drawing.Point(12, 392);
+ this.buttonCreate.Name = "buttonCreate";
+ this.buttonCreate.Size = new System.Drawing.Size(94, 29);
+ this.buttonCreate.TabIndex = 2;
+ this.buttonCreate.Text = "Создать";
+ this.buttonCreate.UseVisualStyleBackColor = true;
+ this.buttonCreate.Click += new System.EventHandler(this.ButtonCreate_Click);
+ //
+ // buttonUp
+ //
+ this.buttonUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonUp.BackgroundImage = global::Airbus.Properties.Resources.Up;
+ this.buttonUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
+ this.buttonUp.Location = new System.Drawing.Point(692, 325);
+ this.buttonUp.Name = "buttonUp";
+ this.buttonUp.Size = new System.Drawing.Size(45, 45);
+ this.buttonUp.TabIndex = 3;
+ this.buttonUp.UseVisualStyleBackColor = true;
+ this.buttonUp.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // buttonLeft
+ //
+ this.buttonLeft.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonLeft.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("buttonLeft.BackgroundImage")));
+ this.buttonLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
+ this.buttonLeft.Location = new System.Drawing.Point(641, 376);
+ this.buttonLeft.Name = "buttonLeft";
+ this.buttonLeft.Size = new System.Drawing.Size(45, 45);
+ this.buttonLeft.TabIndex = 4;
+ this.buttonLeft.UseVisualStyleBackColor = true;
+ this.buttonLeft.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // buttonDown
+ //
+ this.buttonDown.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonDown.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("buttonDown.BackgroundImage")));
+ this.buttonDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
+ this.buttonDown.Location = new System.Drawing.Point(692, 376);
+ this.buttonDown.Name = "buttonDown";
+ this.buttonDown.Size = new System.Drawing.Size(45, 45);
+ this.buttonDown.TabIndex = 5;
+ this.buttonDown.UseVisualStyleBackColor = true;
+ this.buttonDown.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // buttonRight
+ //
+ this.buttonRight.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonRight.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("buttonRight.BackgroundImage")));
+ this.buttonRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
+ this.buttonRight.Location = new System.Drawing.Point(743, 376);
+ this.buttonRight.Name = "buttonRight";
+ this.buttonRight.Size = new System.Drawing.Size(45, 45);
+ this.buttonRight.TabIndex = 6;
+ this.buttonRight.UseVisualStyleBackColor = true;
+ this.buttonRight.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // Form1
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(800, 450);
- this.Text = "Form1";
+ this.Controls.Add(this.buttonRight);
+ this.Controls.Add(this.buttonDown);
+ this.Controls.Add(this.buttonLeft);
+ this.Controls.Add(this.buttonUp);
+ this.Controls.Add(this.buttonCreate);
+ this.Controls.Add(this.pictureBoxAirbus);
+ this.Controls.Add(this.statusStrip1);
+ this.Name = "Form1";
+ this.Text = "Aэробус";
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBoxAirbus)).EndInit();
+ this.statusStrip1.ResumeLayout(false);
+ this.statusStrip1.PerformLayout();
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
}
#endregion
+
+ private PictureBox pictureBoxAirbus;
+ private StatusStrip statusStrip1;
+ private ToolStripStatusLabel toolStripStatusLabelSpeed;
+ private ToolStripStatusLabel toolStripStatusLabelWeight;
+ private ToolStripStatusLabel toolStripStatusLabelCorpusColor;
+ private Button buttonCreate;
+ private Button buttonUp;
+ private Button buttonLeft;
+ private Button buttonDown;
+ private Button buttonRight;
}
}
\ No newline at end of file
diff --git a/Airbus/Airbus/Form1.cs b/Airbus/Airbus/Form1.cs
index b05d848..076d42a 100644
--- a/Airbus/Airbus/Form1.cs
+++ b/Airbus/Airbus/Form1.cs
@@ -1,10 +1,73 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
namespace Airbus
{
public partial class Form1 : Form
{
+ private DrawingAirbus _airbus;
+
public Form1()
{
InitializeComponent();
}
+
+ //метод прорисовки самолёта
+ private void Draw()
+ {
+ Bitmap bmp = new(pictureBoxAirbus.Width, pictureBoxAirbus.Height);
+ Graphics gr = Graphics.FromImage(bmp);
+ _airbus?.DrawTransport(gr);
+ pictureBoxAirbus.Image = bmp;
+ }
+
+ //обработка нажатия кнопки "Создать"
+ private void ButtonCreate_Click(object sender, EventArgs e)
+ {
+ Random rnd = new();
+ _airbus = new DrawingAirbus();
+ _airbus.Initial(rnd.Next(100, 300), rnd.Next(1000, 2000), Color.FromArgb(rnd.Next(0, 256), rnd.Next(0, 256), rnd.Next(0, 256)));
+ _airbus.SetPosition(rnd.Next(10, 100), rnd.Next(10, 100), pictureBoxAirbus.Width, pictureBoxAirbus.Height);
+ toolStripStatusLabelSpeed.Text = $"Скорость: {_airbus.Airbus?.Speed}";
+ toolStripStatusLabelWeight.Text = $"Вес: {_airbus.Airbus?.Weight}";
+ toolStripStatusLabelCorpusColor.Text = $"Цвет: {_airbus.Airbus?.CorpusColor.Name}";
+ Draw();
+ }
+
+ private void ButtonMove_Click(object sender, EventArgs e)
+ {
+ //получаем имя кнопки
+ string name = ((Button)sender)?.Name ?? string.Empty;
+ switch (name)
+ {
+ case "buttonUp":
+ _airbus?.MoveTransport(Direction.Up);
+ break;
+ case "buttonDown":
+ _airbus?.MoveTransport(Direction.Down);
+ break;
+ case "buttonLeft":
+ _airbus?.MoveTransport(Direction.Left);
+ break;
+ case "buttonRight":
+ _airbus?.MoveTransport(Direction.Right);
+ break;
+ }
+ Draw();
+ }
+
+ // Изменение размеров формы
+ private void PictureBoxCar_Resize(object sender, EventArgs e)
+ {
+ _airbus?.ChangeBorders(pictureBoxAirbus.Width, pictureBoxAirbus.Height);
+ Draw();
+ }
}
-}
\ No newline at end of file
+}
diff --git a/Airbus/Airbus/Form1.resx b/Airbus/Airbus/Form1.resx
index 1af7de1..a5f411d 100644
--- a/Airbus/Airbus/Form1.resx
+++ b/Airbus/Airbus/Form1.resx
@@ -1,64 +1,4 @@
-
-
-
+
@@ -117,4 +57,325 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 17, 17
+
+
+
+
+ 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
+ T/8H7joK30yIC9IAAAAASUVORK5CYII=
+
+
+
+
+ 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
+ RrMxG2pfW2X6yEFjttS+Nss0mm3ZUvvaLNMfu2zKptpXA5lGsyEbal/FuO4+81wpzFXzNjbUvorxVpke
+ AzVjQ+2rkUz3mq3YUvtqJdNVsxGr3vbVR6Z7zUZUHmIfK9NotmFT7auVTE9om7Ct9tVOptFswLbaVzOZ
+ RrMBa9/21U+m0dxM9ecrR8v0kYPNbK19NZRpNLeytfbVUKar5kY2176ayjSam9hc+2op02OgTWyvfZUy
+ Dzffgz5hNDfQpPZVjFtk+mOXt9Om9tVSptG8meU95kSZR/eat9Ko9tVSps2TW6kc/syU6THQjbSqfTWV
+ 6V7zNm5+21dPmR4D3USz2ldjmUbzBprVvtrK9BjoBqo/XzlbptFcT7vaV2OZrpqraVj7ai7TveZKGta+
+ Wst0r7mSlrWv5jJdNdfRrvZVjJvuM19Go7mCdrWvYmwk02iuYPGrbCCZfqG9noa1r04yjebVNKx99ZHp
+ XvNqNr3ta5BMo3klLWtfnWQazStpWvvqJtNjoKuotUtCyfQY6Cra1r66yXTVvIaNb/saJdNV8wrq95jR
+ ZBrNizSuffWT6SMHF2ld++oo02heonXtq6NMf+zyAs1rX6XMQ6tr0SeM5lkW95htLTSU6V7zHF1qXx1l
+ egx0hi61r34yfVPYGfrUvnrKdNWs0uhtX+NkutesUjv8CSzTaNboVPvqKdMT2gq9al99ZRrNRXrVvrrK
+ NJqLtHvb11iZRnOBbrWvvjJ95GCBfrWvzjKN5mv61b46y3TVfEXH2ld3mUazoFvtqxhb3me+jEbzGxYP
+ fzp87H1kGs1v6Fb7GiLTRw6+pl/ta4xMo/kVy/eYaWS61/yKjrWvMTJtnnyh0i7JI9NovtCz9jVIpqvm
+ Z5q+7WuOTI+Bnula+xom02h+pGvta5RMnwb6SN/a1zCZRvOJvrWvYTJdNR+6174GynSv2bv2NU6me83u
+ ta9S5qHTLekTu181B9S+irGfzL1Hc0Tta5zMnUdzeY+ZVObOS2FDal8DZe46mkNqX+Nk7nqv2eltXxNl
+ 7jiaY2pfA2XuOJqDal9DZe72GKj285WJZe72GGhU7WuozL2umqNqX0Nl7nTVHFb7Gixzl9EcVvsaK3OX
+ jxyMq30NlrnHaI6qfRVjx/vMl3F3zZNub/s6Pw6RubtoLu4xITL39oV2WO1risydHQMNq33NkLmzvea4
+ 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
+ WHROqhnWrFYAAAAASUVORK5CYII=
+
+
+
+
+ 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
+ Dz0JRNLH/YMcAAAAAElFTkSuQmCC
+
+
\ No newline at end of file
diff --git a/Airbus/Airbus/Properties/Resources.Designer.cs b/Airbus/Airbus/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..85adac8
--- /dev/null
+++ b/Airbus/Airbus/Properties/Resources.Designer.cs
@@ -0,0 +1,103 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+namespace Airbus.Properties {
+ using System;
+
+
+ ///
+ /// Класс ресурса со строгой типизацией для поиска локализованных строк и т.д.
+ ///
+ // Этот класс создан автоматически классом StronglyTypedResourceBuilder
+ // с помощью такого средства, как ResGen или Visual Studio.
+ // Чтобы добавить или удалить член, измените файл .ResX и снова запустите ResGen
+ // с параметром /str или перестройте свой проект VS.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Возвращает кэшированный экземпляр ResourceManager, использованный этим классом.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Airbus.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Перезаписывает свойство CurrentUICulture текущего потока для всех
+ /// обращений к ресурсу с помощью этого класса ресурса со строгой типизацией.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap Down {
+ get {
+ object obj = ResourceManager.GetObject("Down", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap Left {
+ get {
+ object obj = ResourceManager.GetObject("Left", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap Right {
+ get {
+ object obj = ResourceManager.GetObject("Right", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap Up {
+ get {
+ object obj = ResourceManager.GetObject("Up", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+ }
+}
diff --git a/Airbus/Airbus/Properties/Resources.resx b/Airbus/Airbus/Properties/Resources.resx
new file mode 100644
index 0000000..38bb323
--- /dev/null
+++ b/Airbus/Airbus/Properties/Resources.resx
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+ ..\Resources\Down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\Left.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\Right.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\Up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
\ No newline at end of file
diff --git a/Airbus/Airbus/Resources/Down.png b/Airbus/Airbus/Resources/Down.png
new file mode 100644
index 0000000..af66bbc
Binary files /dev/null and b/Airbus/Airbus/Resources/Down.png differ
diff --git a/Airbus/Airbus/Resources/Left.png b/Airbus/Airbus/Resources/Left.png
new file mode 100644
index 0000000..b149788
Binary files /dev/null and b/Airbus/Airbus/Resources/Left.png differ
diff --git a/Airbus/Airbus/Resources/Right.png b/Airbus/Airbus/Resources/Right.png
new file mode 100644
index 0000000..8efc4be
Binary files /dev/null and b/Airbus/Airbus/Resources/Right.png differ
diff --git a/Airbus/Airbus/Resources/Up.png b/Airbus/Airbus/Resources/Up.png
new file mode 100644
index 0000000..6fb895a
Binary files /dev/null and b/Airbus/Airbus/Resources/Up.png differ