81 lines
2.2 KiB
C#
81 lines
2.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using Camera;
|
|
|
|
namespace Test
|
|
{
|
|
public partial class Form1 : Form
|
|
{
|
|
private Camera.Camera _camera;
|
|
|
|
public Form1()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void Form1_Load(object sender, EventArgs e)
|
|
{
|
|
_camera = new Camera.Camera();
|
|
_camera.ImageCaptured += Camera_ImageCaptured;
|
|
}
|
|
|
|
private void Camera_ImageCaptured(object sender, ImageEventArgs e)
|
|
{
|
|
System.Diagnostics.Debug.WriteLine("Form1: 收到图像事件");
|
|
if (InvokeRequired)
|
|
{
|
|
Invoke(new Action<Image>(UpdatePictureBox), e.Image);
|
|
}
|
|
else
|
|
{
|
|
UpdatePictureBox(e.Image);
|
|
}
|
|
}
|
|
|
|
private void UpdatePictureBox(Image image)
|
|
{
|
|
System.Diagnostics.Debug.WriteLine("Form1: 更新图像, Size=" + image.Width + "x" + image.Height);
|
|
Bitmap bitmap = new Bitmap(image);
|
|
pictureBox1.Image = bitmap;
|
|
pictureBox1.Refresh();
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
if (button1.Text == "获取摄像头图像")
|
|
{
|
|
button1.Text = "停止获取";
|
|
_camera.Start();
|
|
}
|
|
else
|
|
{
|
|
button1.Text = "获取摄像头图像";
|
|
_camera.Stop();
|
|
}
|
|
}
|
|
|
|
private void button2_Click(object sender, EventArgs e)
|
|
{
|
|
_camera.SetConfigPath(@"D:\YeXian\EasyTest\EasyTest\bin\Debug\生产测试\TCM232V0.8_自动\Config");
|
|
Setting settingForm = new Setting();
|
|
settingForm.SetCamera(_camera);
|
|
if (_camera.GetCurrentImage() != null)
|
|
{
|
|
settingForm.SetImage(_camera.GetCurrentImage());
|
|
}
|
|
settingForm.ShowDialog();
|
|
}
|
|
|
|
protected override void OnFormClosing(FormClosingEventArgs e)
|
|
{
|
|
_camera.Stop();
|
|
base.OnFormClosing(e);
|
|
}
|
|
}
|
|
} |