Event work
This commit is contained in:
parent
5cc6f9c611
commit
4276aa834e
@ -114,24 +114,9 @@ namespace ProjectMachine
|
||||
/// <param name="e"></param>
|
||||
private void ButtonAddTank_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (listBoxMaps.SelectedIndex == -1)
|
||||
{
|
||||
return;
|
||||
}
|
||||
FormMachine form = new();
|
||||
if (form.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
DrawningObject tank = new(form.SelectedTank);
|
||||
if (_mapsCollection[listBoxMaps.SelectedItem?.ToString() ?? string.Empty] + tank!=null)
|
||||
{
|
||||
MessageBox.Show("Объект добавлен");
|
||||
pictureBox.Image = _mapsCollection[listBoxMaps.SelectedItem?.ToString() ?? string.Empty].ShowSet();
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("Не удалось добавить объект");
|
||||
}
|
||||
}
|
||||
var formTankConfig = new FormTankConfig();
|
||||
// TODO Call method AddEvent from formCarConfig
|
||||
formTankConfig.Show();
|
||||
}
|
||||
/// <summary>
|
||||
/// Удаление объекта
|
||||
|
@ -29,6 +29,7 @@
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.groupBoxConfig = new System.Windows.Forms.GroupBox();
|
||||
this.checkBoxBodyKit = new System.Windows.Forms.CheckBox();
|
||||
this.labelModifiedObject = new System.Windows.Forms.Label();
|
||||
this.labelSimpleObject = new System.Windows.Forms.Label();
|
||||
this.groupBoxColors = new System.Windows.Forms.GroupBox();
|
||||
@ -52,7 +53,6 @@
|
||||
this.pictureBoxObject = new System.Windows.Forms.PictureBox();
|
||||
this.buttonOk = new System.Windows.Forms.Button();
|
||||
this.buttonCancel = new System.Windows.Forms.Button();
|
||||
this.checkBoxBodyKit = new System.Windows.Forms.CheckBox();
|
||||
this.groupBoxConfig.SuspendLayout();
|
||||
this.groupBoxColors.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numericUpDownWeight)).BeginInit();
|
||||
@ -80,6 +80,17 @@
|
||||
this.groupBoxConfig.TabStop = false;
|
||||
this.groupBoxConfig.Text = "Параметры";
|
||||
//
|
||||
// checkBoxBodyKit
|
||||
//
|
||||
this.checkBoxBodyKit.AutoSize = true;
|
||||
this.checkBoxBodyKit.Location = new System.Drawing.Point(6, 136);
|
||||
this.checkBoxBodyKit.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.checkBoxBodyKit.Name = "checkBoxBodyKit";
|
||||
this.checkBoxBodyKit.Size = new System.Drawing.Size(207, 24);
|
||||
this.checkBoxBodyKit.TabIndex = 18;
|
||||
this.checkBoxBodyKit.Text = "Признак наличия обвеса";
|
||||
this.checkBoxBodyKit.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// labelModifiedObject
|
||||
//
|
||||
this.labelModifiedObject.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
@ -311,6 +322,7 @@
|
||||
this.buttonOk.TabIndex = 5;
|
||||
this.buttonOk.Text = "Добавить";
|
||||
this.buttonOk.UseVisualStyleBackColor = true;
|
||||
this.buttonOk.Click += new System.EventHandler(this.buttonOk_Click);
|
||||
//
|
||||
// buttonCancel
|
||||
//
|
||||
@ -322,17 +334,6 @@
|
||||
this.buttonCancel.Text = "Отмена";
|
||||
this.buttonCancel.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// checkBoxBodyKit
|
||||
//
|
||||
this.checkBoxBodyKit.AutoSize = true;
|
||||
this.checkBoxBodyKit.Location = new System.Drawing.Point(6, 136);
|
||||
this.checkBoxBodyKit.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||
this.checkBoxBodyKit.Name = "checkBoxBodyKit";
|
||||
this.checkBoxBodyKit.Size = new System.Drawing.Size(207, 24);
|
||||
this.checkBoxBodyKit.TabIndex = 18;
|
||||
this.checkBoxBodyKit.Text = "Признак наличия обвеса";
|
||||
this.checkBoxBodyKit.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// FormTankConfig
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
|
@ -16,6 +16,13 @@ namespace ProjectMachine
|
||||
/// Переменная-выбранная машина
|
||||
/// </summary>
|
||||
DrawningMachine _tank = null;
|
||||
/// <summary>
|
||||
/// Событие
|
||||
/// </summary>
|
||||
private event TankDelegate EventAddTank;
|
||||
/// <summary>
|
||||
/// Конструктор
|
||||
/// </summary>
|
||||
public FormTankConfig()
|
||||
{
|
||||
InitializeComponent();
|
||||
@ -42,6 +49,21 @@ namespace ProjectMachine
|
||||
pictureBoxObject.Image = bmp;
|
||||
}
|
||||
/// <summary>
|
||||
/// Добавление события
|
||||
/// </summary>
|
||||
/// <param name="ev"></param>
|
||||
public void AddEvent(TankDelegate ev)
|
||||
{
|
||||
if (EventAddTank == null)
|
||||
{
|
||||
EventAddTank = new TankDelegate(ev);
|
||||
}
|
||||
else
|
||||
{
|
||||
EventAddTank += ev;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Передаем информацию при нажатии на Label
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
@ -128,5 +150,15 @@ namespace ProjectMachine
|
||||
{
|
||||
// TODO Call method from object _car if _car is DrawningSportCar and set dop color
|
||||
}
|
||||
/// <summary>
|
||||
/// Добавление машины
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void buttonOk_Click(object sender, EventArgs e)
|
||||
{
|
||||
EventAddTank?.Invoke(_tank);
|
||||
Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
8
ProjectMachine/ProjectMachine/TankDelegate.cs
Normal file
8
ProjectMachine/ProjectMachine/TankDelegate.cs
Normal file
@ -0,0 +1,8 @@
|
||||
namespace ProjectMachine
|
||||
{
|
||||
/// <summary>
|
||||
/// Делегат для передачи объекта-танка
|
||||
/// </summary>
|
||||
/// <param name="tank"></param>
|
||||
public delegate void TankDelegate(DrawningMachine tank);
|
||||
}
|
Loading…
Reference in New Issue
Block a user