using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; namespace SHARP_CLAS_UI.Screen { public partial class Form_Maintenance_Initialize : Form { #region Property #endregion #region Field Form_Frame _Parent; Equipment _equip; delegate void UI_Update_Delegate(); Thread UI_Update_Th; Thread Data_Update_Th; bool update_check; #endregion #region Construct public Form_Maintenance_Initialize(Form_Frame _Parent) { InitializeComponent(); this._Parent = _Parent; this._equip = _Parent._equip; ThreadInit(); } #endregion #region Form_Function #endregion #region Function public void Set_Language() { try { btn_Loader_Initalize.Text = resLanguage.LOADER_MOTORS_INITIALIZE; btn_Process_Initalize.Text = resLanguage.PROCESS_MOTORS_INITIALIZE; btn_Unloader_Initalize.Text = resLanguage.UNLOADER_MOTORS_INITIALIZE; btn_All_Initalize.Text = resLanguage.ALL_MOTORS_INITIALIZE; lb_Loader_Initial_Progress.Text = resLanguage.LOADER_MOTORS_INITIALIZE_PROGRESS; lb_Process_Initial_Progress.Text = resLanguage.PROCESS_MOTORS_INITIALIZE_PROGRESS; lb_Unloader_Initial_Progress.Text = resLanguage.UNLOADER_MOTORS_INITIALIZE_PROGRESS; lb_All_Initial_Progress.Text = resLanguage.ALL_INITIALIZE_PROGRESS; btn_Motor_Stop.Text = resLanguage.MOTOR_STOP; //Loader lb_Loader_Motors.Text = resLanguage.LOADER_MOTORS; lb_Load_Tray_Lift_In.Text = resLanguage.LOAD_TRAY_LIFT_IN; lb_Load_Tray_Lift_Empty.Text = resLanguage.LOAD_TRAY_LIFT_EMPTY; lb_Load_Tray_TR.Text = resLanguage.LOAD_TRAY_TR; lb_Load_Handler_1.Text = resLanguage.LOAD_HANDLER_1; lb_Load_Handler_2.Text = resLanguage.LOAD_HANDLER_2; lb_Load_Reverse.Text = resLanguage.UNLOADER_REVERSE; lb_Pre_Align_Stage.Text = resLanguage.Pre_Align_Stage; //Process lb_Fine_Align_X.Text = resLanguage.Fine_Align_X; lb_Plasma_X.Text = resLanguage.PLASMA_X; lb_Ablation.Text = resLanguage.Ablation; lb_Ablation_Stage_1.Text = resLanguage.Ablation_Stage_1; lb_Ablation_Stage_2.Text = resLanguage.Ablation_Stage_2; //Unloader lb_Unload_Lift_OK.Text = resLanguage.UNLOAD_TRAY_LIFT_OK; lb_Unload_Lift_NG.Text = resLanguage.UNLOAD_TRAY_LIFT_NG; lb_Unload_Lift_Empty.Text = resLanguage.UNLOAD_TRAY_LIFT_EMPTY; lb_Unload_Tray_TR.Text = resLanguage.UNLOAD_TRAY_TR; lb_Unload_Handler_1.Text = resLanguage.UNLOAD_HANDLER_1; lb_Unload_Handler_2.Text = resLanguage.UNLOAD_HANDLER_2; lb_Unload_Reverse.Text = resLanguage.UNLOADER_REVERSE; lb_AOI_Stage.Text = resLanguage.AOI_Stage; } catch(Exception ex) { } } private void ThreadInit() { Data_Update_Th = new Thread(Data_Update_Th_Set); UI_Update_Th = new Thread(UI_Update_Th_Set); Data_Update_Th.Start(); UI_Update_Th.Start(); } private void Data_Update_Th_Set() { while (!IsDisposed) { Thread.Sleep(10); DateTime dt = DateTime.Now; Init_Back_Color_Set(); TimeSpan ts = (DateTime.Now - dt); } } private void UI_Update_Th_Set() { while (!this.IsDisposed) { Thread.Sleep(100); if (!update_check) { update_check = true; UI_Update(); } } } private void UI_Update() { if (InvokeRequired) { BeginInvoke(new UI_Update_Delegate(UI_Update)); return; } else { try { } catch (Exception ex) { } finally { update_check = false; } } } private void Init_Back_Color_Set() { try { //Loader lb_Load_Tray_Lift_In.BackColor = _equip.loader.LiftIn.IsHomeComplete ? Color.Lime : Color.Green; lb_Load_Tray_Lift_Empty.BackColor = _equip.loader.LiftOut.IsHomeComplete ? Color.Lime : Color.Green; lb_Load_Tray_TR.BackColor = _equip.loader.TrayTransfer.IsHomeComplete ? Color.Lime : Color.Green; lb_Load_Handler_1.BackColor = _equip.loader.Handler1.IsHomeComplete ? Color.Lime : Color.Green; lb_Load_Handler_2.BackColor = _equip.before.Handler2.IsHomeComplete ? Color.Lime : Color.Green; lb_Load_Reverse.BackColor = _equip.before.ReverseStage.IsHomeComplete ? Color.Lime : Color.Green; lb_Pre_Align_Stage.BackColor = _equip.before.PreAlignStage.IsHomeComplete ? Color.Lime : Color.Green; //Process lb_Fine_Align_X.BackColor = _equip.process.fine_align.IsHomeComplete ? Color.Lime : Color.Green; lb_Plasma_X.BackColor = _equip.process.plasma.IsHomeComplete ? Color.Lime : Color.Green; lb_Ablation.BackColor = _equip.process.ablation.IsHomeComplete ? Color.Lime : Color.Green; lb_Ablation_Stage_1.BackColor = _equip.process.ablation_stage_1.IsHomeComplete ? Color.Lime : Color.Green; lb_Ablation_Stage_2.BackColor = _equip.process.ablation_stage_2.IsHomeComplete ? Color.Lime : Color.Green; //Unloader lb_Unload_Handler_2.BackColor = _equip.after.Handler2.IsHomeComplete ? Color.Lime : Color.Green; lb_Unload_Reverse.BackColor = _equip.after.ReverseStage.IsHomeComplete ? Color.Lime : Color.Green; lb_AOI_Stage.BackColor = _equip.after.AoiStage.IsHomeComplete ? Color.Lime : Color.Green; lb_Unload_Handler_1.BackColor = _equip.unloader.Handler1.IsHomeComplete ? Color.Lime : Color.Green; lb_Unload_Lift_Empty.BackColor = _equip.unloader.LiftIn.IsHomeComplete ? Color.Lime : Color.Green; lb_Unload_Tray_TR.BackColor = _equip.unloader.TrayTransfer.IsHomeComplete ? Color.Lime : Color.Green; lb_Unload_Lift_NG.BackColor = _equip.unloader.LiftNg.IsHomeComplete ? Color.Lime : Color.Green; lb_Unload_Lift_OK.BackColor = _equip.unloader.LiftOk.IsHomeComplete ? Color.Lime : Color.Green; } catch (Exception ex) { } } #endregion } }