예제 #1
0
        /// <summary>
        /// 更新PlayButton状态及运行状态
        /// </summary>
        /// <param name="yourState">运行状态</param>
        private void UpdatePlayButtonState(CaseActuatorState yourState)
        {
            if (tagItem != null)
            {
                tagItem.SubItems[7].Text = yourState.ToString();
                UpdateProgressBar();
                switch (yourState)
                {
                case CaseActuatorState.Stop:
                    tagItem.SubItems[7].ForeColor = Color.Black;
                    //runnerButton.OnChangeState(PlayButton.PlayButtonState.Stop);
                    runnerButton.BeginInvoke(new Action <PlayButton.PlayButtonState>(runnerButton.OnChangeState), PlayButton.PlayButtonState.Stop);
                    break;

                case CaseActuatorState.Pause:
                    tagItem.SubItems[7].ForeColor = Color.Red;
                    //runnerButton.OnChangeState(PlayButton.PlayButtonState.Pause);
                    runnerButton.BeginInvoke(new Action <PlayButton.PlayButtonState>(runnerButton.OnChangeState), PlayButton.PlayButtonState.Pause);
                    break;

                case CaseActuatorState.Running:
                    tagItem.SubItems[7].ForeColor = Color.Orange;
                    //runnerButton.OnChangeState(PlayButton.PlayButtonState.Run);
                    runnerButton.BeginInvoke(new Action <PlayButton.PlayButtonState>(runnerButton.OnChangeState), PlayButton.PlayButtonState.Run);
                    break;

                default:
                    break;
                }
            }
        }
예제 #2
0
 void runerActuator_OnActuatorStateChanged(string sender, CaseActuatorState yourState)
 {
     if (tagItem != null)
     {
         if (tagItem.ListView.InvokeRequired)
         {
             tagItem.ListView.BeginInvoke(new Action <CaseActuatorState>(UpdatePlayButtonState), yourState);
         }
         else
         {
             UpdatePlayButtonState(yourState);
         }
     }
 }