PIBD-11_Lovtsov.A.A_LabaWork01_Simple #3
@ -36,12 +36,12 @@ public class DrawningDiselLoko
|
||||
///<summary>
|
||||
///Ширина прорисовки тепловоза
|
||||
///</summary>
|
||||
private readonly int _drawingCarWidth = 0;
|
||||
private readonly int _drawingCarWidth = 110;
|
||||
|
||||
///<summary>
|
||||
///Высота прорисовки тепловоза
|
||||
///</summary>
|
||||
private readonly int _drawingCarHeight = 0;
|
||||
private readonly int _drawingCarHeight = 60;
|
||||
|
||||
///<summary>
|
||||
///Иницилизация
|
||||
@ -124,11 +124,17 @@ public class DrawningDiselLoko
|
||||
return true;
|
||||
// вправо
|
||||
case Direction.Right:
|
||||
//TODO прописать логику сдвига в право
|
||||
if (_startPosX.Value - DiselLoko.Step > 0)
|
||||
{
|
||||
_startPosX += (int)DiselLoko.Step;
|
||||
}
|
||||
return true;
|
||||
//вниз
|
||||
case Direction.Down:
|
||||
//TODO прописать логику сдвига в вниз
|
||||
if (_startPosX.Value - DiselLoko.Step > 0)
|
||||
{
|
||||
_startPosY += (int)DiselLoko.Step;
|
||||
}
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
|
25
PrLaba1/PrLaba1/FormDiselLoko.Designer.cs
generated
25
PrLaba1/PrLaba1/FormDiselLoko.Designer.cs
generated
@ -30,7 +30,7 @@
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormDiselLoko));
|
||||
pictureBoxDiselLoko = new PictureBox();
|
||||
button1 = new Button();
|
||||
create = new Button();
|
||||
buttonUp = new Button();
|
||||
buttonDown = new Button();
|
||||
buttonRight = new Button();
|
||||
@ -47,14 +47,15 @@
|
||||
pictureBoxDiselLoko.TabIndex = 0;
|
||||
pictureBoxDiselLoko.TabStop = false;
|
||||
//
|
||||
// button1
|
||||
// create
|
||||
//
|
||||
button1.Location = new Point(12, 415);
|
||||
button1.Name = "button1";
|
||||
button1.Size = new Size(75, 23);
|
||||
button1.TabIndex = 1;
|
||||
button1.Text = "Создать";
|
||||
button1.UseVisualStyleBackColor = true;
|
||||
create.Location = new Point(12, 415);
|
||||
create.Name = "create";
|
||||
create.Size = new Size(75, 23);
|
||||
create.TabIndex = 1;
|
||||
create.Text = "Создать";
|
||||
create.UseVisualStyleBackColor = true;
|
||||
create.Click += ButtonCreate_Click;
|
||||
//
|
||||
// buttonUp
|
||||
//
|
||||
@ -64,6 +65,7 @@
|
||||
buttonUp.Size = new Size(35, 35);
|
||||
buttonUp.TabIndex = 2;
|
||||
buttonUp.UseVisualStyleBackColor = true;
|
||||
buttonUp.Click += ButtonMove_Click;
|
||||
//
|
||||
// buttonDown
|
||||
//
|
||||
@ -73,6 +75,7 @@
|
||||
buttonDown.Size = new Size(35, 35);
|
||||
buttonDown.TabIndex = 3;
|
||||
buttonDown.UseVisualStyleBackColor = true;
|
||||
buttonDown.Click += ButtonMove_Click;
|
||||
//
|
||||
// buttonRight
|
||||
//
|
||||
@ -82,6 +85,7 @@
|
||||
buttonRight.Size = new Size(35, 35);
|
||||
buttonRight.TabIndex = 4;
|
||||
buttonRight.UseVisualStyleBackColor = true;
|
||||
buttonRight.Click += ButtonMove_Click;
|
||||
//
|
||||
// ButtonLeft
|
||||
//
|
||||
@ -91,6 +95,7 @@
|
||||
ButtonLeft.Size = new Size(35, 35);
|
||||
ButtonLeft.TabIndex = 5;
|
||||
ButtonLeft.UseVisualStyleBackColor = true;
|
||||
ButtonLeft.Click += ButtonMove_Click;
|
||||
//
|
||||
// FormDiselLoko
|
||||
//
|
||||
@ -101,7 +106,7 @@
|
||||
Controls.Add(buttonRight);
|
||||
Controls.Add(buttonDown);
|
||||
Controls.Add(buttonUp);
|
||||
Controls.Add(button1);
|
||||
Controls.Add(create);
|
||||
Controls.Add(pictureBoxDiselLoko);
|
||||
Name = "FormDiselLoko";
|
||||
Text = "Тепловоз";
|
||||
@ -112,7 +117,7 @@
|
||||
#endregion
|
||||
|
||||
private PictureBox pictureBoxDiselLoko;
|
||||
private Button button1;
|
||||
private Button create;
|
||||
private Button buttonUp;
|
||||
private Button buttonDown;
|
||||
private Button buttonRight;
|
||||
|
@ -1,20 +1,85 @@
|
||||
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 PrLaba1
|
||||
namespace PrLaba1
|
||||
/// <summary>
|
||||
/// Форма работы с объектом "Тепловоз"
|
||||
/// </summary>
|
||||
{
|
||||
public partial class FormDiselLoko : Form
|
||||
{
|
||||
/// <summary>
|
||||
/// Поле-объект для прорисовки объекта
|
||||
/// </summary>
|
||||
private DrawningDiselLoko? _drawningDiselLoko;
|
||||
|
||||
/// <summary>
|
||||
/// Метод прорисовки машины
|
||||
/// </summary>
|
||||
private void Draw()
|
||||
{
|
||||
if (_drawningDiselLoko == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Bitmap bmp = new(pictureBoxDiselLoko.Width, pictureBoxDiselLoko.Height);
|
||||
Graphics gr = Graphics.FromImage(bmp);
|
||||
_drawningDiselLoko.DrawTransport(gr);
|
||||
pictureBoxDiselLoko.Image = bmp;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Конструктор формы
|
||||
/// </summary>
|
||||
public FormDiselLoko()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Кнопка создать
|
||||
/// </summary>
|
||||
private void ButtonCreate_Click(object sender, EventArgs e)
|
||||
{
|
||||
Random random = new Random();
|
||||
_drawningDiselLoko = new DrawningDiselLoko();
|
||||
_drawningDiselLoko.Init(random.Next(100, 300), random.Next(1000, 3000),
|
||||
Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)),
|
||||
Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)),
|
||||
Convert.ToBoolean(random.Next(0, 2)), Convert.ToBoolean(random.Next(0, 2)));
|
||||
_drawningDiselLoko.SetPictureSize(pictureBoxDiselLoko.Width, pictureBoxDiselLoko.Height);
|
||||
_drawningDiselLoko.SetPosition(random.Next(10, 100), random.Next(10, 100));
|
||||
|
||||
Draw();
|
||||
}
|
||||
|
||||
private void ButtonMove_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (_drawningDiselLoko == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
string name = ((Button)sender)?.Name ?? string.Empty;
|
||||
bool result = false;
|
||||
switch (name)
|
||||
{
|
||||
case "buttonUp":
|
||||
result = _drawningDiselLoko.MoveTransport(Direction.Up);
|
||||
break;
|
||||
case "buttonDown":
|
||||
result = _drawningDiselLoko.MoveTransport(Direction.Down);
|
||||
break;
|
||||
case "ButtonLeft":
|
||||
result = _drawningDiselLoko.MoveTransport(Direction.Left);
|
||||
break;
|
||||
case "buttonRight":
|
||||
result = _drawningDiselLoko.MoveTransport(Direction.Right);
|
||||
break;
|
||||
}
|
||||
|
||||
if (result)
|
||||
{
|
||||
Draw();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -121,7 +121,7 @@
|
||||
<data name="buttonUp.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAIAAAC0Ujn1AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wgAADsIBFShKgAAAAIdJREFUSEvtzFsOgCAMRFH3v2kkcjUFC6U+MCacP+jMLOE1c7rgmF42PDr0RtNu
|
||||
wAAADsABataJCQAAAIdJREFUSEvtzFsOgCAMRFH3v2kkcjUFC6U+MCacP+jMLOE1c7rgmF42PDr0RtNu
|
||||
wpelK8ekwKHJDjGW49Z0cTriXGckmKkgVPHRNANNRDXVG1ULac3d6YjCiX6g1I1abuw0cSfKQvlF0I++
|
||||
8Nh0xMRu4HRE0ImyoHwdKDUR1czpwpwu/HE6hBWbVcKS8nHq8gAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
@ -129,7 +129,7 @@
|
||||
<data name="buttonDown.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAIAAAC0Ujn1AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wgAADsIBFShKgAAAAIVJREFUSEvtzFsKgDAMRFH3v+k6yBXsI22iUkF6PpOZ2ZJtcyDasqYLa7rwm2lK
|
||||
wAAADsABataJCQAAAIVJREFUSEvtzFsKgDAMRFH3v+k6yBXsI22iUkF6PpOZ2ZJtcyDasqYLa7rwm2lK
|
||||
QZQvyhPBW5g4TZwWgnH0T69NU75onIS4G7Xc9Gmh5EChYj6E6gjpytNpoi29nzBgIGT4blqYqfC2jRPC
|
||||
WI6f7eY0jy5XSJg8cBrx5iS0K4Fo1JrOpLQD0c/CkunHhukAAAAASUVORK5CYII=
|
||||
</value>
|
||||
@ -137,7 +137,7 @@
|
||||
<data name="buttonRight.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAIAAAC0Ujn1AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wgAADsIBFShKgAAAAIZJREFUSEvtzUkOgCAMQFHuf2lM4JMgMnSAuOHtbMs3xGNuuvFfOhR8a8zeUC2Y
|
||||
wAAADsABataJCQAAAIZJREFUSEvtzUkOgCAMQFHuf2lM4JMgMnSAuOHtbMs3xGNuuvFfOhR8a8zeUC2Y
|
||||
iinSGTsBdTrjYopTAwJj3JmR6eHCidgbOz96FRZbkCyY7kI1YbQL1YTRFiQLpn70Kiw8KH2wNiPTw4UB
|
||||
gTHLb1mvqNPsBBRppmKLB7ZoZnwmcdONY+kYH/QlwpJxqZGzAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
@ -145,7 +145,7 @@
|
||||
<data name="ButtonLeft.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAIAAAC0Ujn1AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wgAADsIBFShKgAAAAJNJREFUSEvt0EEOgCAMBVHuf2k0MBiRr0CLiQvfjraZBSG+5k9ffC8dEh43ptM5
|
||||
wAAADsABataJCQAAAJNJREFUSEvt0EEOgCAMBVHuf2k0MBiRr0CLiQvfjraZBSG+5k9ffC8dEh43ptM5
|
||||
emCqTKSJ1dgpo2lKDdZKP03DgIDChRmZBmsPSics/OgVTJcgmTBahWrCaBWqBdMlSJ6w8KNXY+dETOHC
|
||||
jMw97gwIPOJU4UIZSmfEauyUiXRGsmCqTKd3VHufaUkP+tMXr6Vj3AB4/8KSzy1jIwAAAABJRU5ErkJg
|
||||
gg==
|
||||
|
@ -11,7 +11,7 @@ namespace PrLaba1
|
||||
// To customize application configuration such as set high DPI settings or default font,
|
||||
// see https://aka.ms/applicationconfiguration.
|
||||
ApplicationConfiguration.Initialize();
|
||||
Application.Run(new Form1());
|
||||
Application.Run(new FormDiselLoko());
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user