领胜LDS 键盘AOI检测项目
patrick.xu
2020-12-16 5241a8f6377dfd1618610dd15fd05ed6f51c8ba2
src/Bro.UI.Config/MenuForms/FrmOperation.cs
@@ -27,22 +27,6 @@
            LoadProcessCode();
            LoadProductionCode();
            //Task.Run(() =>
            //{
            //    Thread.Sleep(1000);
            //    if ((!plProcess.Visible) && (!plProduct.Visible) && _isFirstLoad)
            //    {
            //        LoadProcess();
            //        _isFirstLoad = false;
            //    }
            //});
            //if ((!plProcess.Visible) && (!plProduct.Visible) && _isFirstLoad)
            //{
            //    LoadProcess();
            //    _isFirstLoad = false;
            //}
        }
        #region Load Codes
@@ -71,7 +55,7 @@
                pCodes = systemProcessCodes;
            }
            if (pCodes.Count == 1 && pCodes[0] == "")
            if (pCodes.Count == 1)
            {
                plProcess.Visible = false;
                _processCode = pCodes[0];
@@ -79,12 +63,21 @@
            }
            else
            {
                pCodes.Remove("");
                pCodes.RemoveAll(p => string.IsNullOrWhiteSpace(p));
            }
            if (pCodes.Count > 1)
            {
                plProcess.Visible = true;
                //if (!string.IsNullOrWhiteSpace(SettingHelper.SettingInfo.DefaultProcess))
                //{
                //    if (pCodes.Contains(SettingHelper.SettingInfo.DefaultProcess))
                //    {
                //        pCodes.Remove(SettingHelper.SettingInfo.DefaultProcess);
                //        pCodes.Insert(0, SettingHelper.SettingInfo.DefaultProcess);
                //    }
                //}
                cboProcessCode.SelectedIndexChanged -= cboProcessCode_SelectedIndexChanged;
                UIHelper.SetCombo(cboProcessCode, pCodes, "", "");
@@ -109,6 +102,16 @@
            if (pCodes.Count > 1)
            {
                plProduct.Visible = true;
                //if (!string.IsNullOrWhiteSpace(SettingHelper.SettingInfo.DefaultProduction))
                //{
                //    if (pCodes.Contains(SettingHelper.SettingInfo.DefaultProduction))
                //    {
                //        pCodes.Remove(SettingHelper.SettingInfo.DefaultProduction);
                //        pCodes.Insert(0, SettingHelper.SettingInfo.DefaultProduction);
                //    }
                //}
                cboProductionCode.SelectedIndexChanged -= cboProductionCode_SelectedIndexChanged;
                UIHelper.SetCombo(cboProductionCode, pCodes, "", "");
                cboProductionCode.SelectedIndexChanged += cboProductionCode_SelectedIndexChanged;
@@ -133,12 +136,6 @@
        private void FrmOperation_Load(object sender, System.EventArgs e)
        {
            if ((!plProcess.Visible) && (!plProduct.Visible) && _isFirstLoad)
            {
                LoadProcess();
                _isFirstLoad = false;
            }
            btnStart.Enabled = true;
        }
@@ -148,6 +145,8 @@
            LogAsync(DateTime.Now, "载入流程");
            LoadProcess();
            SettingHelper.SetDefault(_processCode, _productionCode);
        }
        bool isStart = true;
@@ -161,11 +160,8 @@
            btnStart.Enabled = false;
            //Task.Run(() =>
            //{
            try
            {
                //if (Process.ProcessState != EnumHelper.DeviceState.DSOpen)
                if (isStart)
                {
                    await ProcessOperation(true);
@@ -183,10 +179,8 @@
            }
            finally
            {
                //this.BeginInvoke(new Action(() => btnStart.Enabled = true));
                btnStart.Enabled = true;
            }
            //});
        }
        string _currentProcssCode = "";
@@ -204,7 +198,7 @@
                    return;
                }
                //Process.OnProcessStateChanged += Process_OnProcessStateChanged;
                Process.OnLog -= Process_OnLog;
                Process.OnLog += Process_OnLog;
                _currentProcssCode = _processCode;
@@ -221,80 +215,27 @@
            LogAsync(dt, prefix, msg);
        }
        //private void Process_OnProcessStateChanged(EnumHelper.DeviceState state)
        //{
        //    try
        //    {
        //        if (InvokeRequired)
        //        {
        //            this.Invoke(new Action<EnumHelper.DeviceState>(Process_OnProcessStateChanged), state);
        //        }
        //        else
        //        {
        //            try
        //            {
        //                btnStart.Enabled = true;
        //                switch (state)
        //                {
        //                    case EnumHelper.DeviceState.DSOpen:
        //                        btnStart.Text = "  停  止";
        //                        btnStart.ImageIndex = 1;
        //                        btnStart.BackColor = Color.FromArgb(0x7f, Color.LimeGreen);
        //                        btnLoad.Enabled = false;
        //                        break;
        //                    case EnumHelper.DeviceState.DSClose:
        //                        btnStart.Text = "  启  动";
        //                        btnStart.ImageIndex = 0;
        //                        btnStart.BackColor = SystemColors.Control;
        //                        btnLoad.Enabled = true;
        //                        break;
        //                    default:
        //                        break;
        //                }
        //                this.Refresh();
        //            }
        //            catch (Exception ex)
        //            {
        //            }
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //    }
        //}
        private async Task ProcessOperation(bool isStart)
        {
            if (isStart)
            {
                await Task.Run(() => Process.Open());
                //this.BeginInvoke(new Action(() =>
                //{
                btnStart.Text = "  停  止";
                btnStart.ImageIndex = 1;
                btnStart.BackColor = Color.FromArgb(0x7f, Color.LimeGreen);
                btnLoad.Enabled = false;
                //}));
            }
            else
            {
                await Task.Run(() => Process.Close());
                //this.BeginInvoke(new Action(() =>
                //{
                btnStart.Text = "  启  动";
                btnStart.ImageIndex = 0;
                btnStart.BackColor = SystemColors.Control;
                btnLoad.Enabled = true;
                //}));
            }
        }
    }