⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zone.cs

📁 Symbol_MC3000_C#.条码扫码范例程序之2
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlServerCe;

namespace Fyfjm
{
    public partial class Zone : Form
    {
        private SymbolScanWood.SymbolScanWood _objScan = new SymbolScanWood.SymbolScanWood("Text");
        private SqlCeConnection cn = new SqlCeConnection();
        private SqlCeCommand cm = new SqlCeCommand();
        private Symbol.Audio.Controller MyAudioController = null;

        public Zone()
        {
            InitializeComponent();
        }

        private void _objScan_OnAfterRead(object sender, EventArgs e)
        {
            Symbol.Audio.Device MyDevice = (Symbol.Audio.Device)Symbol.StandardForms.SelectDevice.Select(
                                                        Symbol.Audio.Controller.Title, Symbol.Audio.Device.AvailableDevices);
            switch (MyDevice.AudioType)
            {
                //if standard device
                case Symbol.Audio.AudioType.StandardAudio:
                    MyAudioController = new Symbol.Audio.StandardAudio(MyDevice);
                    break;

                //if simulated device
                case Symbol.Audio.AudioType.SimulatedAudio:
                    MyAudioController = new Symbol.Audio.SimulatedAudio(MyDevice);
                    break;

                default:
                    throw new Symbol.Exceptions.InvalidDataTypeException("Unknown Device Type");

            }
            int Duration = 250;
            int Frequency = 2670;
            MyAudioController.PlayAudio(Duration, Frequency);
            MyAudioController.Dispose();

            tbZone.Text = _objScan.BarcodeText;
            cn = Logic.DataAcess.CreateConnection();//创建连接
            cm = cn.CreateCommand();
            cm.CommandText = string.Format("select Zone from Take where Zone = '{0}'", tbZone.Text.Trim());
            SqlCeDataReader dr = cm.ExecuteReader();
            if (dr.Read())//Zone 重复
            {
                dr.Close();
                int i = 'A';
                string B_zone = tbZone.Text.Trim();
                while (i <= 'Z')
                {
                    tbZone.Text = B_zone + (char)i;
                    cm.CommandText = string.Format("select Zone from Take where Zone = '{0}'", tbZone.Text.Trim());
                    SqlCeDataReader Zone_dr = cm.ExecuteReader();
                    if (Zone_dr.Read())
                    {
                        i++;
                        Zone_dr.Close();
                    }
                    else
                    {
                        if (MessageBox.Show("Re-take zone will be change to zone:       " + tbZone.Text.Trim() + "       Quantity will be reset to Zero", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
                        {
                            DialogResult = DialogResult.OK;
                            Zone_dr.Close();
                            break;
                        }
                        else
                        {
                            Zone_dr.Close();
                            tbZone.Text = "";
                            tbZone.Focus();
                            break;
                        }
                    }
                }
            }
            else//Zone不重复
            {
                dr.Close();
                dr.Dispose();
                Logic.DataAcess.Close();
                cn.Close();
                cn.Dispose();
                cn = null;
                DialogResult = DialogResult.OK;
            }
        }

        private void tbZone_KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.KeyCode)
            {
                case Keys.Enter:
                    if (tbZone.Text.Trim() != "")
                    {
                        cn = Logic.DataAcess.CreateConnection();//创建连接
                        cm = cn.CreateCommand();
                        cm.CommandText = string.Format("select Zone from Take where Zone = '{0}'", tbZone.Text.Trim());
                        SqlCeDataReader dr = cm.ExecuteReader();
                        if (dr.Read())//Zone 重复
                        {
                            dr.Close();
                            int i = 'A';
                            string B_zone = tbZone.Text.Trim();
                            while (i <= 'Z')
                            {
                                tbZone.Text = B_zone + (char)i;
                                cm.CommandText = string.Format("select Zone from Take where Zone = '{0}'", tbZone.Text.Trim());
                                SqlCeDataReader Zone_dr = cm.ExecuteReader();
                                if (Zone_dr.Read())
                                {
                                    i++;
                                    Zone_dr.Close();
                                }
                                else
                                {
                                    if (MessageBox.Show("Re-take zone will be change to zone:      " + tbZone.Text.Trim() + "      Quantity will be reset to Zero", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
                                    {
                                        DialogResult = DialogResult.OK;
                                        Zone_dr.Close();
                                        break;
                                    }
                                    else
                                    {
                                        Zone_dr.Close();
                                        tbZone.Text = "";
                                        tbZone.Focus();
                                        break;
                                    }
                                }
                            }
                        }
                        else//Zone不重复
                        {
                            dr.Close();
                            dr.Dispose();
                            Logic.DataAcess.Close();
                            cn.Close();
                            cn.Dispose();
                            cn = null;
                            DialogResult = DialogResult.OK;
                        }
                    }
                    else
                    {
                        MessageBox.Show("The Zone is Null!", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1);
                        tbZone.Focus();
                    }
                    break;
                case Keys.F5:
                    Close();
                    break;
                default:
                    break;
            }
        }

        private void Zone_Closing(object sender, CancelEventArgs e)
        {
            _objScan.TermReader();
        }

        private void Zone_Activated(object sender, EventArgs e)
        {
            if (_objScan.InitReader())
            {
                _objScan.StartRead();
            }
        }

        private void Zone_Deactivate(object sender, EventArgs e)
        {
            _objScan.StopRead();
            _objScan.TermReader();
        }

        private void Zone_Load(object sender, EventArgs e)
        {
            Cursor.Current = Cursors.WaitCursor;
            _objScan.MyAfterRead += new EventHandler(_objScan_OnAfterRead);//开启扫描
            
            Cursor.Current = Cursors.Default;
        }

        private void btESC_Click(object sender, EventArgs e)
        {
            MessageBox.Show("if you want to mainmenu,please click back up first", "System Message", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
            Close();
        }

        private void Zone_KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.KeyCode)
            {
                case Keys.F5:
                    Close();
                    break;
                default:
                    break;
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -