基本信息
源码名称:扫码枪实现示例
源码大小:0.07M
文件格式:.zip
开发语言:C#
更新时间:2024-08-23
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 1 元 
   源码介绍


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;
using thinger.ScannerLib;

namespace 扫码枪串口通讯
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            
            InitializeComponent();

            //通过配置文件拿到串口
            scanner = new Scanner("COM4");

            //绑定
            scanner.ShowMsg = this.ShowMsg;

            //打开串口
            scanner.Connect();
            this.txt_Code.Location=new Point(100,100);
            this.txt_Code.Size = new Size(300, 30);
            this.Controls.Add(this.txt_Code);

            //this.serialPort1.Open();
            this.FormClosing  = MainForm_FormClosing;
        }
        /// <summary>
        // 声明对象
        /// </summary>
        private Scanner scanner;
        private TextBox txt_Code=new TextBox();
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            //this.serialPort1.Close();
            scanner?.DisConnect();
        }

        private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
        {
            this.Invoke(new Action(() =>
            {
                //string message = this.serialPort1.ReadExisting();//设置缓冲区,每次扫码不用手动清零
                //this.txt_Code.Text = this.serialPort1.ReadExisting();
            }));
        }
        //委托执行方法体
        private void ShowMsg(string message)
        {
            this.txt_Code.Text = message;
        }
    }
}