Пример #1
0
        /// <summary>
        /// 定时刷新控件
        /// </summary>
        /// <param name="button"></param>
        public void Refresh(Control button, PLC Plc)      //根据PLC类型读取--按钮类
        {
            Button_state button_State = Button_state.Off; //按钮状态
            Button_base  button_base  = button as Button_base;

            switch (Plc)
            {
            case PLC.Mitsubishi:
                IPLC_interface mitsubishi = new Mitsubishi_realize();                                               //实例化接口--实现三菱在线访问
                if (mitsubishi.PLC_ready)                                                                           //PLC是否准备完成
                {
                    List <bool> data = mitsubishi.PLC_read_M_bit(button_base.PLC_Contact, button_base.PLC_Address); //读取状态
                    button_State = data[0] == true ? Button_state.ON : Button_state.Off;
                    button_state(button, button_State);
                }
                break;

            case PLC.Siemens:
                IPLC_interface Siemens = new Siemens_realize();                                                  //实例化接口--实现西门子在线访问
                if (Siemens.PLC_ready)                                                                           //PLC是否准备完成
                {
                    List <bool> data = Siemens.PLC_read_M_bit(button_base.PLC_Contact, button_base.PLC_Address); //读取状态
                    button_State = data[0] == true ? Button_state.ON : Button_state.Off;
                    button_state(button, button_State);
                }
                break;

            case PLC.MODBUS_TCP:
                MODBUD_TCP MODBUD_TCP = new MODBUD_TCP();                                                                          //实例化接口--实现MODBUS TCP
                if (MODBUD_TCP.IPLC_interface_PLC_ready)                                                                           //PLC是否准备完成
                {
                    List <bool> data = MODBUD_TCP.IPLC_interface_PLC_read_M_bit(button_base.PLC_Contact, button_base.PLC_Address); //读取状态
                    button_State = data[0] == true ? Button_state.ON : Button_state.Off;
                    button_state(button, button_State);
                }
                break;
            }
        }
Пример #2
0
 public void onRelease()
 {
     bs = Button_state.NONE;
 }
Пример #3
0
 public void onClick()
 {
     bs = Button_state.CLICKED;
 }
Пример #4
0
 public void onHover()
 {
     bs = Button_state.HOVER;
 }
Пример #5
0
        /// <summary>
        /// 填充按钮类
        /// </summary>
        /// <param name="button_Reform"></param>
        /// <param name="button_Classes"></param>
        /// <param name="button_State"></param>
        private void button_state(Control button, Button_state button_State)//填充按钮类
        {
            switch (button.GetType().Name)
            {
            case "DAButton":
                DAButton Dabutton = button as DAButton;
                Dabutton.Text      = button_State == Button_state.ON ? Dabutton.Text_ON : Dabutton.Text_OFF;
                Dabutton.BaseColor = button_State == Button_state.ON ? Dabutton.Backdrop_ON : Dabutton.Backdrop_OFF;
                //Dabutton.RectColor = Dabutton.FillColor;
                break;

            case "DACheckBox":
                DACheckBox daCheckBox = button as DACheckBox;
                daCheckBox.Text      = button_State == Button_state.ON ? daCheckBox.Text_ON : daCheckBox.Text_OFF;
                daCheckBox.BackColor = button_State == Button_state.ON ? daCheckBox.Backdrop_ON : daCheckBox.Backdrop_OFF;
                daCheckBox.Checked   = button_State == Button_state.ON ? true : false;
                break;

            case "DASwitch":
                DASwitch daSwitch = button as DASwitch;
                daSwitch.Text       = button_State == Button_state.ON ? daSwitch.Text_ON : daSwitch.Text_OFF;
                daSwitch.FalseColor = daSwitch.Backdrop_OFF;
                daSwitch.TrueColor  = daSwitch.Backdrop_ON;
                daSwitch.Checked    = Convert.ToBoolean(button_State);
                break;

            case "DAConduit":
                DAConduit daConduit = button as DAConduit;
                daConduit.Text            = button_State == Button_state.ON ? daConduit.Text_ON : daConduit.Text_OFF;
                daConduit.LiquidColor     = button_State == Button_state.ON ? daConduit.Backdrop_ON : daConduit.Backdrop_OFF;
                daConduit.LiquidDirection = button_State == Button_state.ON ? HZH_Controls.Controls.LiquidDirection.Forward : HZH_Controls.Controls.LiquidDirection.Backward;
                break;

            case "DARotor":
                DARotor daRotor = button as DARotor;
                daRotor.Text        = button_State == Button_state.ON ? daRotor.Text_ON : daRotor.Text_OFF;
                daRotor.RotorAround = button_State == Button_state.ON ? HZH_Controls.Controls.RotorAround.Clockwise : HZH_Controls.Controls.RotorAround.Counterclockwise;
                break;

            case "DALedBulb":
                DALedBulb daLedBulb = button as DALedBulb;
                daLedBulb.Text  = button_State == Button_state.ON ? daLedBulb.Text_ON : daLedBulb.Text_OFF;
                daLedBulb.Color = button_State == Button_state.ON ? daLedBulb.Backdrop_ON : daLedBulb.Backdrop_OFF;
                break;

            case "DASignalLamp":
                DASignalLamp daSignalLamp = button as DASignalLamp;
                daSignalLamp.Text = button_State == Button_state.ON ? daSignalLamp.Text_ON : daSignalLamp.Text_OFF;
                if (daSignalLamp.I_Flicker & daSignalLamp.O_Flicker == false & button_State == Button_state.Off)
                {
                    daSignalLamp.LampColor[0] = button_State == Button_state.ON ? daSignalLamp.Backdrop_ON : daSignalLamp.Backdrop_OFF;
                    daSignalLamp.TwinkleSpeed = 0;
                    return;
                }
                if (daSignalLamp.I_Flicker == false & daSignalLamp.O_Flicker & button_State == Button_state.ON)
                {
                    daSignalLamp.LampColor[0] = button_State == Button_state.ON ? daSignalLamp.Backdrop_ON : daSignalLamp.Backdrop_OFF;
                    daSignalLamp.TwinkleSpeed = 0;
                    return;
                }
                if (daSignalLamp.O_Flicker & button_State == Button_state.Off)
                {
                    daSignalLamp.LampColor    = daSignalLamp.O_FlickerColor;
                    daSignalLamp.TwinkleSpeed = daSignalLamp.O_FlickerTime;
                    return;
                }
                if (daSignalLamp.I_Flicker & button_State == Button_state.ON)
                {
                    daSignalLamp.LampColor    = daSignalLamp.I_FlickerColor;
                    daSignalLamp.TwinkleSpeed = daSignalLamp.I_FlickerTime;
                    return;
                }
                if (daSignalLamp.O_Flicker == false & daSignalLamp.I_Flicker == false)
                {
                    daSignalLamp.LampColor[0] = button_State == Button_state.ON ? daSignalLamp.Backdrop_ON : daSignalLamp.Backdrop_OFF;
                    daSignalLamp.TwinkleSpeed = 0;
                }
                break;

            case "DAAlarmLamp":
                DAAlarmLamp daAlarmLamp = button as DAAlarmLamp;
                daAlarmLamp.Text = button_State == Button_state.ON ? daAlarmLamp.Text_ON : daAlarmLamp.Text_OFF;
                if (daAlarmLamp.I_Flicker & daAlarmLamp.O_Flicker == false & button_State == Button_state.Off)
                {
                    daAlarmLamp.LampColor[0] = button_State == Button_state.ON ? daAlarmLamp.Backdrop_ON : daAlarmLamp.Backdrop_OFF;
                    daAlarmLamp.TwinkleSpeed = 0;
                    return;
                }
                if (daAlarmLamp.I_Flicker == false & daAlarmLamp.O_Flicker & button_State == Button_state.ON)
                {
                    daAlarmLamp.LampColor[0] = button_State == Button_state.ON ? daAlarmLamp.Backdrop_ON : daAlarmLamp.Backdrop_OFF;
                    daAlarmLamp.TwinkleSpeed = 0;
                    return;
                }
                if (daAlarmLamp.O_Flicker & button_State == Button_state.Off)
                {
                    daAlarmLamp.LampColor    = daAlarmLamp.O_FlickerColor;
                    daAlarmLamp.TwinkleSpeed = daAlarmLamp.O_FlickerTime;
                    return;
                }
                if (daAlarmLamp.I_Flicker & button_State == Button_state.ON)
                {
                    daAlarmLamp.LampColor    = daAlarmLamp.I_FlickerColor;
                    daAlarmLamp.TwinkleSpeed = daAlarmLamp.I_FlickerTime;
                    return;
                }
                if (daAlarmLamp.O_Flicker == false & daAlarmLamp.I_Flicker == false)
                {
                    daAlarmLamp.LampColor[0] = button_State == Button_state.ON ? daAlarmLamp.Backdrop_ON : daAlarmLamp.Backdrop_OFF;
                    daAlarmLamp.TwinkleSpeed = 0;
                }
                break;
            }
        }