Browse Source

Работа над формой охраны

Вячеслав Терешенко 2 years ago
parent
commit
d5e461dbf3

+ 210 - 167
ImpulseVision/FormGuard.Designer.cs

@@ -30,35 +30,44 @@
         {
             this.components = new System.ComponentModel.Container();
             System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormGuard));
             this.RbtIn = new System.Windows.Forms.RadioButton();
             this.RbtOut = new System.Windows.Forms.RadioButton();
             this.PbxEther = new System.Windows.Forms.PictureBox();
-            this.BtnCheck = new System.Windows.Forms.Button();
-            this.label1 = new System.Windows.Forms.Label();
             this.Lblus = new System.Windows.Forms.Label();
-            this.LblStatus = new System.Windows.Forms.Label();
             this.LblRecognizeUser = new System.Windows.Forms.Label();
             this.BsStaffs = new System.Windows.Forms.BindingSource(this.components);
             this.impulseVisionAppDataSet1 = new ImpulseVision.ImpulseVisionAppDataSet();
-            this.BtnApply = new System.Windows.Forms.Button();
+            this.BtnSkip = new System.Windows.Forms.Button();
             this.toolStrip1 = new System.Windows.Forms.ToolStrip();
             this.toolStripLabel1 = new System.Windows.Forms.ToolStripLabel();
             this.CmbCams = new System.Windows.Forms.ToolStripComboBox();
-            this.RPanelForDgbImages = new ImpulseVision.RPanel();
-            this.DgbImages = new System.Windows.Forms.DataGridView();
-            this.Column1 = new System.Windows.Forms.DataGridViewImageColumn();
-            this.RPanelEther = new ImpulseVision.RPanel();
+            this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
+            this.TslDate = new System.Windows.Forms.ToolStripLabel();
             this.staffsTableAdapter = new ImpulseVision.ImpulseVisionAppDataSetTableAdapters.StaffsTableAdapter();
             this.LblID = new System.Windows.Forms.Label();
             this.TimerCam = new System.Windows.Forms.Timer(this.components);
+            this.BtnReject = new System.Windows.Forms.Button();
+            this.PbxSourceImage = new System.Windows.Forms.PictureBox();
+            this.DgbInput = new System.Windows.Forms.DataGridView();
+            this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.RPanelForButton = new ImpulseVision.RPanel();
+            this.DgbOutput = new System.Windows.Forms.DataGridView();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.SplitContainer = new System.Windows.Forms.SplitContainer();
             ((System.ComponentModel.ISupportInitialize)(this.PbxEther)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.BsStaffs)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.impulseVisionAppDataSet1)).BeginInit();
             this.toolStrip1.SuspendLayout();
-            this.RPanelForDgbImages.SuspendLayout();
-            ((System.ComponentModel.ISupportInitialize)(this.DgbImages)).BeginInit();
-            this.RPanelEther.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.PbxSourceImage)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.DgbInput)).BeginInit();
+            this.RPanelForButton.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.DgbOutput)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.SplitContainer)).BeginInit();
+            this.SplitContainer.Panel1.SuspendLayout();
+            this.SplitContainer.Panel2.SuspendLayout();
+            this.SplitContainer.SuspendLayout();
             this.SuspendLayout();
             // 
             // RbtIn
@@ -88,63 +97,32 @@
             this.PbxEther.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
-            this.PbxEther.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.PbxEther.Location = new System.Drawing.Point(0, 0);
+            this.PbxEther.BackColor = System.Drawing.Color.Black;
+            this.PbxEther.Location = new System.Drawing.Point(0, 57);
             this.PbxEther.Name = "PbxEther";
-            this.PbxEther.Size = new System.Drawing.Size(519, 291);
+            this.PbxEther.Size = new System.Drawing.Size(537, 308);
             this.PbxEther.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
             this.PbxEther.TabIndex = 8;
             this.PbxEther.TabStop = false;
             // 
-            // BtnCheck
-            // 
-            this.BtnCheck.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
-            this.BtnCheck.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
-            this.BtnCheck.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(246)))), ((int)(((byte)(255)))), ((int)(((byte)(248)))));
-            this.BtnCheck.Location = new System.Drawing.Point(12, 57);
-            this.BtnCheck.Name = "BtnCheck";
-            this.BtnCheck.Size = new System.Drawing.Size(162, 35);
-            this.BtnCheck.TabIndex = 9;
-            this.BtnCheck.Text = "Проверить";
-            this.BtnCheck.UseVisualStyleBackColor = false;
-            this.BtnCheck.Click += new System.EventHandler(this.BtnCheck_Click);
-            // 
-            // label1
-            // 
-            this.label1.AutoSize = true;
-            this.label1.Location = new System.Drawing.Point(232, 30);
-            this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(63, 21);
-            this.label1.TabIndex = 10;
-            this.label1.Text = "Статус:";
-            // 
             // Lblus
             // 
             this.Lblus.AutoSize = true;
-            this.Lblus.Location = new System.Drawing.Point(232, 57);
+            this.Lblus.Location = new System.Drawing.Point(376, 30);
             this.Lblus.Name = "Lblus";
             this.Lblus.Size = new System.Drawing.Size(124, 21);
             this.Lblus.TabIndex = 11;
             this.Lblus.Text = "Пользователь:";
             // 
-            // LblStatus
-            // 
-            this.LblStatus.AutoSize = true;
-            this.LblStatus.Location = new System.Drawing.Point(301, 30);
-            this.LblStatus.Name = "LblStatus";
-            this.LblStatus.Size = new System.Drawing.Size(64, 21);
-            this.LblStatus.TabIndex = 12;
-            this.LblStatus.Text = "Готово";
-            // 
             // LblRecognizeUser
             // 
             this.LblRecognizeUser.AutoSize = true;
             this.LblRecognizeUser.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.BsStaffs, "FIO", true));
-            this.LblRecognizeUser.Location = new System.Drawing.Point(362, 57);
+            this.LblRecognizeUser.Location = new System.Drawing.Point(506, 30);
             this.LblRecognizeUser.Name = "LblRecognizeUser";
-            this.LblRecognizeUser.Size = new System.Drawing.Size(154, 21);
+            this.LblRecognizeUser.Size = new System.Drawing.Size(103, 21);
             this.LblRecognizeUser.TabIndex = 13;
-            this.LblRecognizeUser.Text = "Михаил Иванович";
+            this.LblRecognizeUser.Text = "Default User";
             // 
             // BsStaffs
             // 
@@ -156,27 +134,29 @@
             this.impulseVisionAppDataSet1.DataSetName = "ImpulseVisionAppDataSet";
             this.impulseVisionAppDataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
             // 
-            // BtnApply
+            // BtnSkip
             // 
-            this.BtnApply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.BtnApply.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
-            this.BtnApply.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
-            this.BtnApply.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(246)))), ((int)(((byte)(255)))), ((int)(((byte)(248)))));
-            this.BtnApply.Location = new System.Drawing.Point(525, 341);
-            this.BtnApply.Name = "BtnApply";
-            this.BtnApply.Size = new System.Drawing.Size(146, 35);
-            this.BtnApply.TabIndex = 14;
-            this.BtnApply.Text = "Применить";
-            this.BtnApply.UseVisualStyleBackColor = false;
+            this.BtnSkip.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.BtnSkip.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(155)))), ((int)(((byte)(114)))));
+            this.BtnSkip.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
+            this.BtnSkip.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(246)))), ((int)(((byte)(255)))), ((int)(((byte)(248)))));
+            this.BtnSkip.Location = new System.Drawing.Point(168, 3);
+            this.BtnSkip.Name = "BtnSkip";
+            this.BtnSkip.Size = new System.Drawing.Size(146, 35);
+            this.BtnSkip.TabIndex = 14;
+            this.BtnSkip.Text = "Пропустить";
+            this.BtnSkip.UseVisualStyleBackColor = false;
             // 
             // toolStrip1
             // 
             this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
             this.toolStripLabel1,
-            this.CmbCams});
+            this.CmbCams,
+            this.toolStripSeparator1,
+            this.TslDate});
             this.toolStrip1.Location = new System.Drawing.Point(0, 0);
             this.toolStrip1.Name = "toolStrip1";
-            this.toolStrip1.Size = new System.Drawing.Size(683, 25);
+            this.toolStrip1.Size = new System.Drawing.Size(735, 25);
             this.toolStrip1.TabIndex = 16;
             this.toolStrip1.Text = "toolStrip1";
             // 
@@ -193,95 +173,17 @@
             this.CmbCams.Size = new System.Drawing.Size(150, 25);
             this.CmbCams.SelectedIndexChanged += new System.EventHandler(this.CmbCams_SelectedIndexChanged);
             // 
-            // RPanelForDgbImages
+            // toolStripSeparator1
             // 
-            this.RPanelForDgbImages.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.RPanelForDgbImages.BackColor = System.Drawing.Color.White;
-            this.RPanelForDgbImages.BackColorAdditional = System.Drawing.Color.Gray;
-            this.RPanelForDgbImages.BackColorGradientEnabled = false;
-            this.RPanelForDgbImages.BackColorGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Horizontal;
-            this.RPanelForDgbImages.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.RPanelForDgbImages.BorderColorEnabled = false;
-            this.RPanelForDgbImages.BorderColorOnHover = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.RPanelForDgbImages.BorderColorOnHoverEnabled = false;
-            this.RPanelForDgbImages.Controls.Add(this.DgbImages);
-            this.RPanelForDgbImages.Cursor = System.Windows.Forms.Cursors.Default;
-            this.RPanelForDgbImages.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
-            this.RPanelForDgbImages.ForeColor = System.Drawing.Color.White;
-            this.RPanelForDgbImages.Location = new System.Drawing.Point(525, 98);
-            this.RPanelForDgbImages.Name = "RPanelForDgbImages";
-            this.RPanelForDgbImages.RippleColor = System.Drawing.Color.Black;
-            this.RPanelForDgbImages.Rounding = 10;
-            this.RPanelForDgbImages.RoundingEnable = true;
-            this.RPanelForDgbImages.Size = new System.Drawing.Size(146, 237);
-            this.RPanelForDgbImages.TabIndex = 17;
-            this.RPanelForDgbImages.TextHover = null;
-            this.RPanelForDgbImages.UseDownPressEffectOnClick = false;
-            this.RPanelForDgbImages.UseRippleEffect = true;
-            this.RPanelForDgbImages.UseZoomEffectOnHover = false;
-            // 
-            // DgbImages
-            // 
-            this.DgbImages.AllowUserToAddRows = false;
-            this.DgbImages.AllowUserToDeleteRows = false;
-            this.DgbImages.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.DgbImages.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
-            this.DgbImages.BorderStyle = System.Windows.Forms.BorderStyle.None;
-            this.DgbImages.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
-            this.DgbImages.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
-            this.Column1});
-            this.DgbImages.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
-            this.DgbImages.Location = new System.Drawing.Point(0, 0);
-            this.DgbImages.Name = "DgbImages";
-            this.DgbImages.ReadOnly = true;
-            this.DgbImages.RowHeadersVisible = false;
-            this.DgbImages.RowTemplate.Height = 150;
-            this.DgbImages.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
-            this.DgbImages.Size = new System.Drawing.Size(146, 234);
-            this.DgbImages.TabIndex = 15;
+            this.toolStripSeparator1.Name = "toolStripSeparator1";
+            this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
             // 
-            // Column1
+            // TslDate
             // 
-            this.Column1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
-            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.TopCenter;
-            dataGridViewCellStyle1.NullValue = ((object)(resources.GetObject("dataGridViewCellStyle1.NullValue")));
-            this.Column1.DefaultCellStyle = dataGridViewCellStyle1;
-            this.Column1.HeaderText = "Names";
-            this.Column1.Name = "Column1";
-            this.Column1.ReadOnly = true;
-            this.Column1.Resizable = System.Windows.Forms.DataGridViewTriState.True;
-            this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
-            // 
-            // RPanelEther
-            // 
-            this.RPanelEther.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.RPanelEther.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(128)))));
-            this.RPanelEther.BackColorAdditional = System.Drawing.Color.Gray;
-            this.RPanelEther.BackColorGradientEnabled = false;
-            this.RPanelEther.BackColorGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Horizontal;
-            this.RPanelEther.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.RPanelEther.BorderColorEnabled = false;
-            this.RPanelEther.BorderColorOnHover = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.RPanelEther.BorderColorOnHoverEnabled = false;
-            this.RPanelEther.Controls.Add(this.PbxEther);
-            this.RPanelEther.Cursor = System.Windows.Forms.Cursors.Default;
-            this.RPanelEther.Font = new System.Drawing.Font("Verdana", 8.25F);
-            this.RPanelEther.ForeColor = System.Drawing.Color.White;
-            this.RPanelEther.Location = new System.Drawing.Point(0, 98);
-            this.RPanelEther.Name = "RPanelEther";
-            this.RPanelEther.RippleColor = System.Drawing.Color.Black;
-            this.RPanelEther.Rounding = 15;
-            this.RPanelEther.RoundingEnable = true;
-            this.RPanelEther.Size = new System.Drawing.Size(519, 291);
-            this.RPanelEther.TabIndex = 18;
-            this.RPanelEther.TextHover = null;
-            this.RPanelEther.UseDownPressEffectOnClick = false;
-            this.RPanelEther.UseRippleEffect = true;
-            this.RPanelEther.UseZoomEffectOnHover = false;
+            this.TslDate.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
+            this.TslDate.Name = "TslDate";
+            this.TslDate.Size = new System.Drawing.Size(58, 22);
+            this.TslDate.Text = "Сегодня: ";
             // 
             // staffsTableAdapter
             // 
@@ -292,7 +194,7 @@
             this.LblID.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.LblID.AutoSize = true;
             this.LblID.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.BsStaffs, "ID", true));
-            this.LblID.Location = new System.Drawing.Point(425, 30);
+            this.LblID.Location = new System.Drawing.Point(229, 33);
             this.LblID.Name = "LblID";
             this.LblID.Size = new System.Drawing.Size(66, 21);
             this.LblID.TabIndex = 20;
@@ -304,24 +206,156 @@
             this.TimerCam.Interval = 250;
             this.TimerCam.Tick += new System.EventHandler(this.TimerCam_Tick);
             // 
+            // BtnReject
+            // 
+            this.BtnReject.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.BtnReject.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(228)))), ((int)(((byte)(63)))), ((int)(((byte)(111)))));
+            this.BtnReject.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
+            this.BtnReject.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(246)))), ((int)(((byte)(255)))), ((int)(((byte)(248)))));
+            this.BtnReject.Location = new System.Drawing.Point(16, 3);
+            this.BtnReject.Name = "BtnReject";
+            this.BtnReject.Size = new System.Drawing.Size(146, 35);
+            this.BtnReject.TabIndex = 21;
+            this.BtnReject.Text = "Отклонить";
+            this.BtnReject.UseVisualStyleBackColor = false;
+            // 
+            // PbxSourceImage
+            // 
+            this.PbxSourceImage.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.PbxSourceImage.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
+            this.PbxSourceImage.Location = new System.Drawing.Point(437, 57);
+            this.PbxSourceImage.Name = "PbxSourceImage";
+            this.PbxSourceImage.Size = new System.Drawing.Size(100, 100);
+            this.PbxSourceImage.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
+            this.PbxSourceImage.TabIndex = 22;
+            this.PbxSourceImage.TabStop = false;
+            // 
+            // DgbInput
+            // 
+            this.DgbInput.AllowUserToAddRows = false;
+            this.DgbInput.AllowUserToDeleteRows = false;
+            this.DgbInput.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(218)))), ((int)(((byte)(214)))), ((int)(((byte)(235)))));
+            this.DgbInput.BorderStyle = System.Windows.Forms.BorderStyle.None;
+            this.DgbInput.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.DgbInput.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.Column1});
+            this.DgbInput.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.DgbInput.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
+            this.DgbInput.Location = new System.Drawing.Point(0, 0);
+            this.DgbInput.Name = "DgbInput";
+            this.DgbInput.ReadOnly = true;
+            this.DgbInput.RowHeadersVisible = false;
+            this.DgbInput.RowTemplate.Height = 150;
+            this.DgbInput.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.DgbInput.Size = new System.Drawing.Size(192, 152);
+            this.DgbInput.TabIndex = 15;
+            // 
+            // Column1
+            // 
+            this.Column1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.TopCenter;
+            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.Column1.DefaultCellStyle = dataGridViewCellStyle1;
+            this.Column1.HeaderText = "Вход";
+            this.Column1.Name = "Column1";
+            this.Column1.ReadOnly = true;
+            // 
+            // RPanelForButton
+            // 
+            this.RPanelForButton.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.RPanelForButton.BackColor = System.Drawing.Color.White;
+            this.RPanelForButton.BackColorAdditional = System.Drawing.Color.Gray;
+            this.RPanelForButton.BackColorGradientEnabled = false;
+            this.RPanelForButton.BackColorGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Horizontal;
+            this.RPanelForButton.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
+            this.RPanelForButton.BorderColorEnabled = true;
+            this.RPanelForButton.BorderColorOnHover = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
+            this.RPanelForButton.BorderColorOnHoverEnabled = true;
+            this.RPanelForButton.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.RPanelForButton.Controls.Add(this.BtnReject);
+            this.RPanelForButton.Controls.Add(this.BtnSkip);
+            this.RPanelForButton.Cursor = System.Windows.Forms.Cursors.Default;
+            this.RPanelForButton.Font = new System.Drawing.Font("Verdana", 8.25F);
+            this.RPanelForButton.ForeColor = System.Drawing.Color.White;
+            this.RPanelForButton.Location = new System.Drawing.Point(0, 367);
+            this.RPanelForButton.Name = "RPanelForButton";
+            this.RPanelForButton.RippleColor = System.Drawing.Color.Black;
+            this.RPanelForButton.RoundingEnable = true;
+            this.RPanelForButton.Size = new System.Drawing.Size(735, 47);
+            this.RPanelForButton.TabIndex = 23;
+            this.RPanelForButton.TextHover = null;
+            this.RPanelForButton.UseDownPressEffectOnClick = false;
+            this.RPanelForButton.UseRippleEffect = true;
+            this.RPanelForButton.UseZoomEffectOnHover = false;
+            // 
+            // DgbOutput
+            // 
+            this.DgbOutput.AllowUserToAddRows = false;
+            this.DgbOutput.AllowUserToDeleteRows = false;
+            this.DgbOutput.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(218)))), ((int)(((byte)(214)))), ((int)(((byte)(235)))));
+            this.DgbOutput.BorderStyle = System.Windows.Forms.BorderStyle.None;
+            this.DgbOutput.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.DgbOutput.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn1});
+            this.DgbOutput.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.DgbOutput.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
+            this.DgbOutput.Location = new System.Drawing.Point(0, 0);
+            this.DgbOutput.Name = "DgbOutput";
+            this.DgbOutput.ReadOnly = true;
+            this.DgbOutput.RowHeadersVisible = false;
+            this.DgbOutput.RowTemplate.Height = 150;
+            this.DgbOutput.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.DgbOutput.Size = new System.Drawing.Size(192, 148);
+            this.DgbOutput.TabIndex = 15;
+            this.DgbOutput.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.DgbOutput_CellContentClick);
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            this.dataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.TopCenter;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle2;
+            this.dataGridViewTextBoxColumn1.HeaderText = "Выход";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;
+            // 
+            // SplitContainer
+            // 
+            this.SplitContainer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.SplitContainer.Location = new System.Drawing.Point(543, 57);
+            this.SplitContainer.Name = "SplitContainer";
+            this.SplitContainer.Orientation = System.Windows.Forms.Orientation.Horizontal;
+            // 
+            // SplitContainer.Panel1
+            // 
+            this.SplitContainer.Panel1.Controls.Add(this.DgbInput);
+            // 
+            // SplitContainer.Panel2
+            // 
+            this.SplitContainer.Panel2.Controls.Add(this.DgbOutput);
+            this.SplitContainer.Size = new System.Drawing.Size(192, 304);
+            this.SplitContainer.SplitterDistance = 152;
+            this.SplitContainer.TabIndex = 24;
+            // 
             // FormGuard
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 21F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.ClientSize = new System.Drawing.Size(683, 388);
+            this.ClientSize = new System.Drawing.Size(735, 414);
+            this.Controls.Add(this.SplitContainer);
+            this.Controls.Add(this.PbxSourceImage);
+            this.Controls.Add(this.PbxEther);
+            this.Controls.Add(this.RPanelForButton);
             this.Controls.Add(this.LblID);
-            this.Controls.Add(this.RPanelEther);
-            this.Controls.Add(this.RPanelForDgbImages);
             this.Controls.Add(this.toolStrip1);
-            this.Controls.Add(this.BtnApply);
             this.Controls.Add(this.LblRecognizeUser);
-            this.Controls.Add(this.LblStatus);
             this.Controls.Add(this.Lblus);
-            this.Controls.Add(this.label1);
-            this.Controls.Add(this.BtnCheck);
             this.Controls.Add(this.RbtOut);
             this.Controls.Add(this.RbtIn);
+            this.DoubleBuffered = true;
             this.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
             this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
             this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
@@ -329,15 +363,21 @@
             this.Name = "FormGuard";
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
             this.Text = "ImpulseVision";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FormGuard_FormClosing);
             this.Load += new System.EventHandler(this.FormGuard_Load);
             ((System.ComponentModel.ISupportInitialize)(this.PbxEther)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.BsStaffs)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.impulseVisionAppDataSet1)).EndInit();
             this.toolStrip1.ResumeLayout(false);
             this.toolStrip1.PerformLayout();
-            this.RPanelForDgbImages.ResumeLayout(false);
-            ((System.ComponentModel.ISupportInitialize)(this.DgbImages)).EndInit();
-            this.RPanelEther.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.PbxSourceImage)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.DgbInput)).EndInit();
+            this.RPanelForButton.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.DgbOutput)).EndInit();
+            this.SplitContainer.Panel1.ResumeLayout(false);
+            this.SplitContainer.Panel2.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.SplitContainer)).EndInit();
+            this.SplitContainer.ResumeLayout(false);
             this.ResumeLayout(false);
             this.PerformLayout();
 
@@ -347,23 +387,26 @@
         private System.Windows.Forms.RadioButton RbtIn;
         private System.Windows.Forms.RadioButton RbtOut;
         private System.Windows.Forms.PictureBox PbxEther;
-        private System.Windows.Forms.Button BtnCheck;
-        private System.Windows.Forms.Label label1;
         private System.Windows.Forms.Label Lblus;
-        private System.Windows.Forms.Label LblStatus;
         private System.Windows.Forms.Label LblRecognizeUser;
-        private System.Windows.Forms.Button BtnApply;
-        private System.Windows.Forms.DataGridView DgbImages;
+        private System.Windows.Forms.Button BtnSkip;
+        private System.Windows.Forms.DataGridView DgbInput;
         private System.Windows.Forms.ToolStrip toolStrip1;
         private System.Windows.Forms.ToolStripLabel toolStripLabel1;
         private System.Windows.Forms.ToolStripComboBox CmbCams;
-        private System.Windows.Forms.DataGridViewImageColumn Column1;
-        private RPanel RPanelForDgbImages;
-        private RPanel RPanelEther;
         private ImpulseVisionAppDataSet impulseVisionAppDataSet1;
         private ImpulseVisionAppDataSetTableAdapters.StaffsTableAdapter staffsTableAdapter;
         public System.Windows.Forms.BindingSource BsStaffs;
         private System.Windows.Forms.Label LblID;
         private System.Windows.Forms.Timer TimerCam;
+        private System.Windows.Forms.Button BtnReject;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
+        private System.Windows.Forms.PictureBox PbxSourceImage;
+        private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
+        private System.Windows.Forms.ToolStripLabel TslDate;
+        private RPanel RPanelForButton;
+        private System.Windows.Forms.DataGridView DgbOutput;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private System.Windows.Forms.SplitContainer SplitContainer;
     }
 }

+ 28 - 36
ImpulseVision/FormGuard.cs

@@ -40,6 +40,7 @@ namespace ImpulseVision
 
         private void CaptureTimer_Tick(object sender, EventArgs e)
         {
+            TslDate.Text = $"Сейчас: {DateTime.Now.ToString("HH:mm")}  {DateTime.Now.ToString("dd.MM.yyyy")}";
             ProcessFrame();
         }
         #region <Переменные>
@@ -269,12 +270,12 @@ namespace ImpulseVision
         {
             if (ImageList.Size != 0)
             {
-                //Eigen Face Algorithm
                 FaceRecognizer.PredictionResult result = recognizer.Predict(DetectedFace.Resize(100, 100, Inter.Cubic));
                 FaceName = NameList[result.Label];
 
                 this.Text = "UserID: " + FaceList[result.Label].UserID;
                 CameraCaptureFace = DetectedFace.ToBitmap();
+                PbxSourceImage.Image = FaceList[result.Label].FaceImage.ToBitmap();
             }
             else
             {
@@ -320,40 +321,6 @@ namespace ImpulseVision
             SCon.Close();
             return true;
         }
-        private void BtnCheck_Click(object sender, EventArgs e)
-        {
-            if(!GetPicturesPath())
-            {
-                return;
-            }
-            string CurrentID = LstUserPictures[0].UserID;
-            for (int i = 0; i < LstUserPictures.Count; i++)
-            {
-                if (!LstUserID.Contains(LstUserPictures[i].UserID))
-                {
-                    LstUserID.Add(LstUserPictures[i].UserID);
-                }
-            }
-            
-            if(LstUserID.Count > 0)
-            {
-                //TrainImageFromDir(LstUserID[iterator]);
-            }
-            /*
-            for (int i = 0; i < LstUserID.Count; i++)
-            {
-                //Thread.Sleep(5000);
-                IsTrained = false;
-                NextFace = false;
-                //тренировать изображения текущего пользователя
-                TrainImageFromDir(LstUserID[i]);
-                ////подождать некоторое время
-                //Task.Delay(5000);
-            }
-            //TrainImageFromDir(LstUserID[0]);
-            */
-            //IsTrained = true;
-        }
         /// <summary>
         /// распознавание изображения, его отображение и сохранение
         /// </summary>
@@ -592,7 +559,8 @@ namespace ImpulseVision
             // TODO: This line of code loads data into the 'impulseVisionAppDataSet1.Staffs' table. You can move, or remove it, as needed.
             this.staffsTableAdapter.Fill(this.impulseVisionAppDataSet1.Staffs);
             GetCams();
-            
+
+
             //if (VideoCapture != null)
             //{
             //    IsWorking = false;
@@ -687,5 +655,29 @@ namespace ImpulseVision
             }
 
         }
+
+        private void CameraOff()
+        {
+            if (BgrFrame != null)
+            {
+                BgrFrame = null;
+                //Capture.Stop();
+                //Capture.Dispose();
+                Capture.Dispose();
+            }
+            //CaptureTimer.Stop();
+            CaptureTimer.Tick -= CaptureTimer_Tick;
+
+            PbxEther.Image = Properties.Resources._9110852_video_no_icon;
+        }
+        private void DgbOutput_CellContentClick(object sender, DataGridViewCellEventArgs e)
+        {
+
+        }
+
+        private void FormGuard_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            CameraOff();
+        }
     }
 }

+ 7 - 21
ImpulseVision/FormGuard.resx

@@ -126,36 +126,22 @@
   <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>17, 17</value>
   </metadata>
-  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-  <data name="dataGridViewCellStyle1.NullValue" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        Qk32AgAAAAAAADYAAAAoAAAADgAAABAAAAABABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACEgoTGw8bGw8bGw8bGw8bGw8bGw8bG
-        w8bGw8bGw8bGw8bGw8bGw8YAAAAAAISChP///////////////////////////////////////////8bD
-        xgAAAAAAhIKE////////////////////////////////////////////xsPGAAAAAACEgoT/////////
-        ///////////////////////////////////Gw8YAAAAAAISChP//////////////////////////////
-        /////////////8bDxgAAAAAAhIKE////////////AAD/AAD/////////AAD/AAD/////////xsPGAAAA
-        AACEgoT///////////////8AAP8AAP8AAP8AAP/////////////Gw8YAAAAAAISChP//////////////
-        /////wAA/wAA/////////////////8bDxgAAAAAAhIKE////////////////AAD/AAD/AAD/AAD/////
-        ////////xsPGAAAAAACEgoT///////////8AAP8AAP////////8AAP8AAP/////////Gw8YAAAAAAISC
-        hP///////////////////////////////////////////8bDxgAAAAAAhIKE////////////////////
-        ////////////////////////xsPGAAAAAACEgoT/////////////////////////////////////////
-        ///Gw8YAAAAAAISChP///////////////////////////////////////////8bDxgAAAAAAhIKEhIKE
-        hIKEhIKEhIKEhIKEhIKEhIKEhIKEhIKEhIKEhIKEhIKEhIKEAAA=
-</value>
-  </data>
   <metadata name="staffsTableAdapter.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>415, 17</value>
   </metadata>
   <metadata name="TimerCam.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>568, 17</value>
   </metadata>
+  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>51</value>
   </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
   <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         AAABAAEAAAAAAAEAIAAdZwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAEAAAABAAgEAAAA9ntg7QAAZuRJ

+ 157 - 157
ImpulseVision/FormMain.Designer.cs

@@ -55,12 +55,21 @@
             this.TabPages = new System.Windows.Forms.TabControl();
             this.TbUsers = new System.Windows.Forms.TabPage();
             this.TableUsers = new System.Windows.Forms.TableLayoutPanel();
-            this.RPanelUser = new ImpulseVision.RPanel();
-            this.label4 = new System.Windows.Forms.Label();
             this.TbMain = new System.Windows.Forms.TabPage();
             this.TableLayoutWorks = new System.Windows.Forms.TableLayoutPanel();
             this.PbxEther = new System.Windows.Forms.PictureBox();
             this.panel1 = new System.Windows.Forms.Panel();
+            this.BtnSave = new System.Windows.Forms.Button();
+            this.TbSettings = new System.Windows.Forms.TabPage();
+            this.NumCountSavePicture = new System.Windows.Forms.NumericUpDown();
+            this.label5 = new System.Windows.Forms.Label();
+            this.label3 = new System.Windows.Forms.Label();
+            this.label2 = new System.Windows.Forms.Label();
+            this.ImList = new System.Windows.Forms.ImageList(this.components);
+            this.TimerSaving = new System.Windows.Forms.Timer(this.components);
+            this.RPanelUser = new ImpulseVision.RPanel();
+            this.label4 = new System.Windows.Forms.Label();
+            this.TbxPhone = new ImpulseVision.EgoldsGoogleTextBox();
             this.TbxPasportNum = new ImpulseVision.EgoldsGoogleTextBox();
             this.TbxPasportSeria = new ImpulseVision.EgoldsGoogleTextBox();
             this.TbxPatronymic = new ImpulseVision.EgoldsGoogleTextBox();
@@ -68,32 +77,23 @@
             this.RPanelForAddUser = new ImpulseVision.RPanel();
             this.label1 = new System.Windows.Forms.Label();
             this.TbxLastname = new ImpulseVision.EgoldsGoogleTextBox();
-            this.BtnSave = new System.Windows.Forms.Button();
-            this.TbSettings = new System.Windows.Forms.TabPage();
-            this.NumCountSavePicture = new System.Windows.Forms.NumericUpDown();
-            this.label5 = new System.Windows.Forms.Label();
             this.SwPositionWindow = new ImpulseVision.EgoldsToggleSwitch();
-            this.label3 = new System.Windows.Forms.Label();
-            this.label2 = new System.Windows.Forms.Label();
             this.RPanelSettings = new ImpulseVision.RPanel();
             this.LblTextSettings = new System.Windows.Forms.Label();
             this.SwAutoLoad = new ImpulseVision.EgoldsToggleSwitch();
-            this.ImList = new System.Windows.Forms.ImageList(this.components);
-            this.TimerSaving = new System.Windows.Forms.Timer(this.components);
-            this.TbxPhone = new ImpulseVision.EgoldsGoogleTextBox();
             this.menuStrip1.SuspendLayout();
             this.ToolsMenu.SuspendLayout();
             this.statusStrip1.SuspendLayout();
             this.TabPages.SuspendLayout();
             this.TbUsers.SuspendLayout();
-            this.RPanelUser.SuspendLayout();
             this.TbMain.SuspendLayout();
             this.TableLayoutWorks.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.PbxEther)).BeginInit();
             this.panel1.SuspendLayout();
-            this.RPanelForAddUser.SuspendLayout();
             this.TbSettings.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.NumCountSavePicture)).BeginInit();
+            this.RPanelUser.SuspendLayout();
+            this.RPanelForAddUser.SuspendLayout();
             this.RPanelSettings.SuspendLayout();
             this.SuspendLayout();
             // 
@@ -305,49 +305,9 @@
             this.TableUsers.Name = "TableUsers";
             this.TableUsers.RowCount = 1;
             this.TableUsers.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.TableUsers.Size = new System.Drawing.Size(707, 323);
+            this.TableUsers.Size = new System.Drawing.Size(707, 291);
             this.TableUsers.TabIndex = 7;
             // 
-            // RPanelUser
-            // 
-            this.RPanelUser.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.RPanelUser.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(73)))), ((int)(((byte)(104)))), ((int)(((byte)(112)))));
-            this.RPanelUser.BackColorAdditional = System.Drawing.Color.Gray;
-            this.RPanelUser.BackColorGradientEnabled = false;
-            this.RPanelUser.BackColorGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Horizontal;
-            this.RPanelUser.BorderColor = System.Drawing.Color.Tomato;
-            this.RPanelUser.BorderColorEnabled = false;
-            this.RPanelUser.BorderColorOnHover = System.Drawing.Color.Tomato;
-            this.RPanelUser.BorderColorOnHoverEnabled = false;
-            this.RPanelUser.Controls.Add(this.label4);
-            this.RPanelUser.Cursor = System.Windows.Forms.Cursors.Default;
-            this.RPanelUser.Font = new System.Drawing.Font("Verdana", 8.25F);
-            this.RPanelUser.ForeColor = System.Drawing.Color.White;
-            this.RPanelUser.Location = new System.Drawing.Point(3, 3);
-            this.RPanelUser.Name = "RPanelUser";
-            this.RPanelUser.RippleColor = System.Drawing.Color.Black;
-            this.RPanelUser.RoundingEnable = true;
-            this.RPanelUser.Size = new System.Drawing.Size(717, 25);
-            this.RPanelUser.TabIndex = 6;
-            this.RPanelUser.TextHover = null;
-            this.RPanelUser.UseDownPressEffectOnClick = false;
-            this.RPanelUser.UseRippleEffect = true;
-            this.RPanelUser.UseZoomEffectOnHover = false;
-            // 
-            // label4
-            // 
-            this.label4.BackColor = System.Drawing.Color.Transparent;
-            this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.label4.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
-            this.label4.ForeColor = System.Drawing.Color.White;
-            this.label4.Location = new System.Drawing.Point(0, 0);
-            this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(717, 25);
-            this.label4.TabIndex = 5;
-            this.label4.Text = "<Пользователи>";
-            this.label4.TextAlign = System.Drawing.ContentAlignment.TopCenter;
-            // 
             // TbMain
             // 
             this.TbMain.BackColor = System.Drawing.Color.White;
@@ -405,6 +365,147 @@
             this.panel1.Size = new System.Drawing.Size(250, 345);
             this.panel1.TabIndex = 0;
             // 
+            // BtnSave
+            // 
+            this.BtnSave.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
+            this.BtnSave.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
+            this.BtnSave.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(246)))), ((int)(((byte)(255)))), ((int)(((byte)(248)))));
+            this.BtnSave.Location = new System.Drawing.Point(7, 307);
+            this.BtnSave.Name = "BtnSave";
+            this.BtnSave.Size = new System.Drawing.Size(236, 35);
+            this.BtnSave.TabIndex = 3;
+            this.BtnSave.Text = "Сохранить";
+            this.BtnSave.UseVisualStyleBackColor = false;
+            this.BtnSave.Click += new System.EventHandler(this.BtnSave_Click);
+            // 
+            // TbSettings
+            // 
+            this.TbSettings.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
+            this.TbSettings.Controls.Add(this.NumCountSavePicture);
+            this.TbSettings.Controls.Add(this.label5);
+            this.TbSettings.Controls.Add(this.SwPositionWindow);
+            this.TbSettings.Controls.Add(this.label3);
+            this.TbSettings.Controls.Add(this.label2);
+            this.TbSettings.Controls.Add(this.RPanelSettings);
+            this.TbSettings.Controls.Add(this.SwAutoLoad);
+            this.TbSettings.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
+            this.TbSettings.Location = new System.Drawing.Point(4, 30);
+            this.TbSettings.Name = "TbSettings";
+            this.TbSettings.Padding = new System.Windows.Forms.Padding(3);
+            this.TbSettings.Size = new System.Drawing.Size(723, 357);
+            this.TbSettings.TabIndex = 1;
+            this.TbSettings.Text = "tabPage2";
+            // 
+            // NumCountSavePicture
+            // 
+            this.NumCountSavePicture.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.NumCountSavePicture.Location = new System.Drawing.Point(403, 114);
+            this.NumCountSavePicture.Name = "NumCountSavePicture";
+            this.NumCountSavePicture.ReadOnly = true;
+            this.NumCountSavePicture.Size = new System.Drawing.Size(79, 29);
+            this.NumCountSavePicture.TabIndex = 7;
+            this.NumCountSavePicture.Value = new decimal(new int[] {
+            30,
+            0,
+            0,
+            0});
+            // 
+            // label5
+            // 
+            this.label5.AutoSize = true;
+            this.label5.Location = new System.Drawing.Point(8, 118);
+            this.label5.Name = "label5";
+            this.label5.Size = new System.Drawing.Size(324, 21);
+            this.label5.TabIndex = 6;
+            this.label5.Text = "Количество сохраняемых изображений";
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(8, 83);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(365, 21);
+            this.label3.TabIndex = 4;
+            this.label3.Text = "Сохранять положение окна при перезапуске";
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(8, 46);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(340, 21);
+            this.label2.TabIndex = 3;
+            this.label2.Text = "Запускать приложение вместе с системой";
+            // 
+            // ImList
+            // 
+            this.ImList.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit;
+            this.ImList.ImageSize = new System.Drawing.Size(100, 100);
+            this.ImList.TransparentColor = System.Drawing.Color.Transparent;
+            // 
+            // TimerSaving
+            // 
+            this.TimerSaving.Interval = 500;
+            this.TimerSaving.Tick += new System.EventHandler(this.TimerSaving_Tick);
+            // 
+            // RPanelUser
+            // 
+            this.RPanelUser.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.RPanelUser.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(73)))), ((int)(((byte)(104)))), ((int)(((byte)(112)))));
+            this.RPanelUser.BackColorAdditional = System.Drawing.Color.Gray;
+            this.RPanelUser.BackColorGradientEnabled = false;
+            this.RPanelUser.BackColorGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Horizontal;
+            this.RPanelUser.BorderColor = System.Drawing.Color.Tomato;
+            this.RPanelUser.BorderColorEnabled = false;
+            this.RPanelUser.BorderColorOnHover = System.Drawing.Color.Tomato;
+            this.RPanelUser.BorderColorOnHoverEnabled = false;
+            this.RPanelUser.Controls.Add(this.label4);
+            this.RPanelUser.Cursor = System.Windows.Forms.Cursors.Default;
+            this.RPanelUser.Font = new System.Drawing.Font("Verdana", 8.25F);
+            this.RPanelUser.ForeColor = System.Drawing.Color.White;
+            this.RPanelUser.Location = new System.Drawing.Point(3, 3);
+            this.RPanelUser.Name = "RPanelUser";
+            this.RPanelUser.RippleColor = System.Drawing.Color.Black;
+            this.RPanelUser.RoundingEnable = true;
+            this.RPanelUser.Size = new System.Drawing.Size(717, 25);
+            this.RPanelUser.TabIndex = 6;
+            this.RPanelUser.TextHover = null;
+            this.RPanelUser.UseDownPressEffectOnClick = false;
+            this.RPanelUser.UseRippleEffect = true;
+            this.RPanelUser.UseZoomEffectOnHover = false;
+            // 
+            // label4
+            // 
+            this.label4.BackColor = System.Drawing.Color.Transparent;
+            this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.label4.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
+            this.label4.ForeColor = System.Drawing.Color.White;
+            this.label4.Location = new System.Drawing.Point(0, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(717, 25);
+            this.label4.TabIndex = 5;
+            this.label4.Text = "<Пользователи>";
+            this.label4.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+            // 
+            // TbxPhone
+            // 
+            this.TbxPhone.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
+            this.TbxPhone.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(137)))), ((int)(((byte)(60)))), ((int)(((byte)(143)))));
+            this.TbxPhone.BorderColorNotActive = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
+            this.TbxPhone.Cursor = System.Windows.Forms.Cursors.IBeam;
+            this.TbxPhone.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
+            this.TbxPhone.FontTextPreview = new System.Drawing.Font("Arial", 8F, System.Drawing.FontStyle.Bold);
+            this.TbxPhone.ForeColor = System.Drawing.Color.Black;
+            this.TbxPhone.Location = new System.Drawing.Point(7, 258);
+            this.TbxPhone.Name = "TbxPhone";
+            this.TbxPhone.SelectionStart = 0;
+            this.TbxPhone.Size = new System.Drawing.Size(236, 40);
+            this.TbxPhone.TabIndex = 10;
+            this.TbxPhone.TextInput = "";
+            this.TbxPhone.TextPreview = "Телефон";
+            this.TbxPhone.UseSystemPasswordChar = false;
+            // 
             // TbxPasportNum
             // 
             this.TbxPasportNum.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
@@ -535,60 +636,6 @@
             this.TbxLastname.TextPreview = "Фамилия";
             this.TbxLastname.UseSystemPasswordChar = false;
             // 
-            // BtnSave
-            // 
-            this.BtnSave.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
-            this.BtnSave.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
-            this.BtnSave.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(246)))), ((int)(((byte)(255)))), ((int)(((byte)(248)))));
-            this.BtnSave.Location = new System.Drawing.Point(7, 307);
-            this.BtnSave.Name = "BtnSave";
-            this.BtnSave.Size = new System.Drawing.Size(236, 35);
-            this.BtnSave.TabIndex = 3;
-            this.BtnSave.Text = "Сохранить";
-            this.BtnSave.UseVisualStyleBackColor = false;
-            this.BtnSave.Click += new System.EventHandler(this.BtnSave_Click);
-            // 
-            // TbSettings
-            // 
-            this.TbSettings.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.TbSettings.Controls.Add(this.NumCountSavePicture);
-            this.TbSettings.Controls.Add(this.label5);
-            this.TbSettings.Controls.Add(this.SwPositionWindow);
-            this.TbSettings.Controls.Add(this.label3);
-            this.TbSettings.Controls.Add(this.label2);
-            this.TbSettings.Controls.Add(this.RPanelSettings);
-            this.TbSettings.Controls.Add(this.SwAutoLoad);
-            this.TbSettings.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
-            this.TbSettings.Location = new System.Drawing.Point(4, 30);
-            this.TbSettings.Name = "TbSettings";
-            this.TbSettings.Padding = new System.Windows.Forms.Padding(3);
-            this.TbSettings.Size = new System.Drawing.Size(723, 315);
-            this.TbSettings.TabIndex = 1;
-            this.TbSettings.Text = "tabPage2";
-            // 
-            // NumCountSavePicture
-            // 
-            this.NumCountSavePicture.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
-            this.NumCountSavePicture.Location = new System.Drawing.Point(403, 114);
-            this.NumCountSavePicture.Name = "NumCountSavePicture";
-            this.NumCountSavePicture.ReadOnly = true;
-            this.NumCountSavePicture.Size = new System.Drawing.Size(79, 29);
-            this.NumCountSavePicture.TabIndex = 7;
-            this.NumCountSavePicture.Value = new decimal(new int[] {
-            30,
-            0,
-            0,
-            0});
-            // 
-            // label5
-            // 
-            this.label5.AutoSize = true;
-            this.label5.Location = new System.Drawing.Point(8, 118);
-            this.label5.Name = "label5";
-            this.label5.Size = new System.Drawing.Size(324, 21);
-            this.label5.TabIndex = 6;
-            this.label5.Text = "Количество сохраняемых изображений";
-            // 
             // SwPositionWindow
             // 
             this.SwPositionWindow.BackColor = System.Drawing.Color.White;
@@ -603,24 +650,6 @@
             this.SwPositionWindow.TabIndex = 5;
             this.SwPositionWindow.TextOnChecked = "";
             // 
-            // label3
-            // 
-            this.label3.AutoSize = true;
-            this.label3.Location = new System.Drawing.Point(8, 83);
-            this.label3.Name = "label3";
-            this.label3.Size = new System.Drawing.Size(365, 21);
-            this.label3.TabIndex = 4;
-            this.label3.Text = "Сохранять положение окна при перезапуске";
-            // 
-            // label2
-            // 
-            this.label2.AutoSize = true;
-            this.label2.Location = new System.Drawing.Point(8, 46);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(340, 21);
-            this.label2.TabIndex = 3;
-            this.label2.Text = "Запускать приложение вместе с системой";
-            // 
             // RPanelSettings
             // 
             this.RPanelSettings.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
@@ -675,35 +704,6 @@
             this.SwAutoLoad.TabIndex = 1;
             this.SwAutoLoad.TextOnChecked = "";
             // 
-            // ImList
-            // 
-            this.ImList.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit;
-            this.ImList.ImageSize = new System.Drawing.Size(100, 100);
-            this.ImList.TransparentColor = System.Drawing.Color.Transparent;
-            // 
-            // TimerSaving
-            // 
-            this.TimerSaving.Interval = 500;
-            this.TimerSaving.Tick += new System.EventHandler(this.TimerSaving_Tick);
-            // 
-            // TbxPhone
-            // 
-            this.TbxPhone.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(255)))), ((int)(((byte)(252)))));
-            this.TbxPhone.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(137)))), ((int)(((byte)(60)))), ((int)(((byte)(143)))));
-            this.TbxPhone.BorderColorNotActive = System.Drawing.Color.FromArgb(((int)(((byte)(124)))), ((int)(((byte)(136)))), ((int)(((byte)(144)))));
-            this.TbxPhone.Cursor = System.Windows.Forms.Cursors.IBeam;
-            this.TbxPhone.Font = new System.Drawing.Font("Segoe UI Variable Small Semibol", 12F, System.Drawing.FontStyle.Bold);
-            this.TbxPhone.FontTextPreview = new System.Drawing.Font("Arial", 8F, System.Drawing.FontStyle.Bold);
-            this.TbxPhone.ForeColor = System.Drawing.Color.Black;
-            this.TbxPhone.Location = new System.Drawing.Point(7, 258);
-            this.TbxPhone.Name = "TbxPhone";
-            this.TbxPhone.SelectionStart = 0;
-            this.TbxPhone.Size = new System.Drawing.Size(236, 40);
-            this.TbxPhone.TabIndex = 10;
-            this.TbxPhone.TextInput = "";
-            this.TbxPhone.TextPreview = "Телефон";
-            this.TbxPhone.UseSystemPasswordChar = false;
-            // 
             // FormMain
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 21F);
@@ -733,15 +733,15 @@
             this.statusStrip1.PerformLayout();
             this.TabPages.ResumeLayout(false);
             this.TbUsers.ResumeLayout(false);
-            this.RPanelUser.ResumeLayout(false);
             this.TbMain.ResumeLayout(false);
             this.TableLayoutWorks.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.PbxEther)).EndInit();
             this.panel1.ResumeLayout(false);
-            this.RPanelForAddUser.ResumeLayout(false);
             this.TbSettings.ResumeLayout(false);
             this.TbSettings.PerformLayout();
             ((System.ComponentModel.ISupportInitialize)(this.NumCountSavePicture)).EndInit();
+            this.RPanelUser.ResumeLayout(false);
+            this.RPanelForAddUser.ResumeLayout(false);
             this.RPanelSettings.ResumeLayout(false);
             this.ResumeLayout(false);
             this.PerformLayout();

+ 1 - 1
ImpulseVision/FormMain.cs

@@ -671,7 +671,7 @@ where ID = '{IdUser}'";
             string PhotoPath = string.Empty;
             ProgressTrain.Value = 0;
 
-            bool Flag = TbxLastname.Text.Trim() == "" || TbxFirstname.Text.Trim() == "" || TbxPasportSeria.Text.Trim() == "" || TbxPasportNum.Text.Trim() == "";
+            bool Flag = TbxLastname.Text.Trim() == "" || TbxFirstname.Text.Trim() == "" || TbxPasportSeria.Text.Trim() == "" || TbxPasportNum.Text.Trim() == "" || TbxPhone.Text.Trim() == "";
 
             if(Flag)
             {

BIN
ImpulseVision/bin/Debug/ImpulseVision.exe


BIN
ImpulseVision/bin/Debug/Source/TrainedImages/Вера8519496857.bmp