|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.ComponentModel;
|
|
|
|
|
using System.Drawing;
|
|
|
|
|
using System.Data;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using System.Windows.Forms;
|
|
|
|
|
|
|
|
|
|
namespace WindowsFormsApp2
|
|
|
|
|
{
|
|
|
|
|
public partial class singleCam : UserControl
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
static singleCam()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Client client = new Client();
|
|
|
|
|
|
|
|
|
|
public singleCam()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void closeSocket()
|
|
|
|
|
{
|
|
|
|
|
client.DisConnection();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateUIID(int id)
|
|
|
|
|
{
|
|
|
|
|
if (InvokeRequired) { Invoke(new Action<int>(updateUIID), id); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
label1.Text = id + 1 + "#检测数";
|
|
|
|
|
label2.Text = id + 1 + "#OK数";
|
|
|
|
|
label3.Text = id + 1 + "#NG数";
|
|
|
|
|
label4.Text = id + 1 + "#剔除数";
|
|
|
|
|
groupBox1.Text = id + 1 + "#分析结果";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void setCamId(int id)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
updateUIID(id);
|
|
|
|
|
client.bindCamId(id);
|
|
|
|
|
//client.InitLicenseData(updateTime, updateJd, updateOK, updateNG, updateSpeed, updatekick, updateTotal);
|
|
|
|
|
client.InitLicenseData(_update);
|
|
|
|
|
client.InitLicenseImage(updateImage);
|
|
|
|
|
}
|
|
|
|
|
catch (Exception)
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
private void _update(string data)
|
|
|
|
|
{
|
|
|
|
|
string info_frame = "1";
|
|
|
|
|
string speed_frame = "2";
|
|
|
|
|
string kick_frame = "3";
|
|
|
|
|
string ok_frame = "4";
|
|
|
|
|
string ng_frame = "5";
|
|
|
|
|
string total_frame = "7";
|
|
|
|
|
if (InvokeRequired) { Invoke(new Action<string>(_update), data); return; }
|
|
|
|
|
else{
|
|
|
|
|
string[] lis = data.Split('_');
|
|
|
|
|
if (lis[0] == info_frame)
|
|
|
|
|
{
|
|
|
|
|
if(lis.Length == 3)
|
|
|
|
|
{
|
|
|
|
|
textBox6.Text = lis[1] + "个";
|
|
|
|
|
textBox7.Text = lis[2] + "ms";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if(lis[0] == speed_frame)
|
|
|
|
|
{
|
|
|
|
|
textBox5.Text = lis[1] + "个/秒";
|
|
|
|
|
}
|
|
|
|
|
else if(lis[0] == kick_frame)
|
|
|
|
|
{
|
|
|
|
|
textBox4.Text = lis[1];
|
|
|
|
|
}
|
|
|
|
|
else if(lis[0] == ok_frame)
|
|
|
|
|
{
|
|
|
|
|
updateOK(lis[1]);
|
|
|
|
|
}
|
|
|
|
|
else if(lis[0] == ng_frame)
|
|
|
|
|
{
|
|
|
|
|
updateNG(lis[1]);
|
|
|
|
|
}
|
|
|
|
|
else if (lis[0] == total_frame)
|
|
|
|
|
{
|
|
|
|
|
textBox1.Text = lis[1];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Bitmap bmp0 = null;
|
|
|
|
|
private void updateImage(int Num,Bitmap data)
|
|
|
|
|
{
|
|
|
|
|
if (pictureBox1.InvokeRequired) {
|
|
|
|
|
if(Num==0)
|
|
|
|
|
pictureBox1.Invoke(new Action<int, Bitmap>(updateImage), Num, data);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if(Num==0)
|
|
|
|
|
{
|
|
|
|
|
if(bmp0 != null)
|
|
|
|
|
{
|
|
|
|
|
bmp0.Dispose();
|
|
|
|
|
bmp0 = null;
|
|
|
|
|
}
|
|
|
|
|
bmp0 = new Bitmap(data);
|
|
|
|
|
pictureBox1.Image = bmp0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateSpeed(string data)
|
|
|
|
|
{
|
|
|
|
|
if (textBox5.InvokeRequired) { textBox5.Invoke(new Action<string>(updateSpeed), data); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
textBox5.Text = data + "个/秒";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateTime(string data)
|
|
|
|
|
{
|
|
|
|
|
if (textBox7.InvokeRequired) { textBox7.Invoke(new Action<string>(updateTime), data); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
textBox7.Text = data + "ms";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateJd(string data)
|
|
|
|
|
{
|
|
|
|
|
if (textBox6.InvokeRequired) { textBox6.Invoke(new Action<string>(updateJd), data); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
textBox6.Text = data + "个";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateTotal(string data)
|
|
|
|
|
{
|
|
|
|
|
if (textBox1.InvokeRequired) { textBox1.Invoke(new Action<string>(updateTotal), data); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
textBox1.Text = data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateOK(string data)
|
|
|
|
|
{
|
|
|
|
|
if (textBox2.InvokeRequired) { textBox2.Invoke(new Action<string>(updateOK), data); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
textBox2.Text = data;
|
|
|
|
|
updateLabel(true);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateNG(string data)
|
|
|
|
|
{
|
|
|
|
|
if (textBox3.InvokeRequired) { textBox3.Invoke(new Action<string>(updateNG), data); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
textBox3.Text = data;
|
|
|
|
|
updateLabel(false);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updatekick(string data)
|
|
|
|
|
{
|
|
|
|
|
if (textBox4.InvokeRequired) { textBox4.Invoke(new Action<string>(updatekick), data); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
textBox4.Text = data;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateLabel(bool ok)
|
|
|
|
|
{
|
|
|
|
|
if (label8.InvokeRequired) { label8.Invoke(new Action<bool>(updateLabel), ok); return; }
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (ok)
|
|
|
|
|
{
|
|
|
|
|
label8.Text = "OK";
|
|
|
|
|
label8.BackColor = Color.Lime;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
label8.Text = "NG";
|
|
|
|
|
label8.BackColor = Color.Red;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void pictureBox1_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void panel3_Paint(object sender, PaintEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label4_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox3_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void groupBox1_Enter(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void panel1_Paint(object sender, PaintEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label8_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox7_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label7_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox6_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label6_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox5_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label5_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void panel2_Paint(object sender, PaintEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label1_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label2_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void label3_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox1_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox2_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox4_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void textBox7_TextChanged_1(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|