Esempio n. 1
0
        private void btnDoor_MouseDown(object sender, MouseButtonEventArgs e)
        {
            ucFloorButton floorButton = (ucFloorButton)sender;

            if (floorButton.Name.Contains("Door"))
            {
                // 엘리베이터가 Move중일 때 Door기능 작동안됨
                if (controller.model.MoveState != enMoveState.Idle)
                {
                    return;
                }

                floorButton.ButtonColorUI();

                if (floorButton.Name.Contains("Close"))
                {
                    controller.model.DoorState = enDoorState.Close;
                }
                else if (floorButton.Name.Contains("Open"))
                {
                    //Open 버튼을 계속 누르고 있으면 문이 열려있음
                    controller.model.DoorState = enDoorState.Open;
                    //Open 버튼을 계속 누르고 있으면 자동 문 닫힘 쓰레드 해제
                    controller._cCloseDoorThread.Abort();
                }
            }
        }
Esempio n. 2
0
        private void InitFloorButton()
        {
            lblRepairing.Visibility = Visibility.Hidden;

            for (int i = controller.model.AllFloorCount; i > 0; i--)
            {
                ucFloorButton cUcFloorButton = new ucFloorButton(i)
                {
                    Name   = "Floor" + i.ToString(),
                    Width  = 12,
                    Margin = new Thickness(1, 2, 1, 2),
                };

                Evt_Y2.Instance(i.ToString() + "FloorClick").Event += (bChoiceState, iFloor) =>
                {
                    controller.FloorReserve(bChoiceState, iFloor);
                };

                wrpFloorButtons.Children.Add(cUcFloorButton);
            }
        }
Esempio n. 3
0
        private void btnDoor_MouseUp(object sender, MouseButtonEventArgs e)
        {
            ucFloorButton floorButton = (ucFloorButton)sender;

            if (floorButton.Name.Contains("Door"))
            {
                // 엘리베이터가 Move중일 때 Door기능 작동안됨
                if (controller.model.MoveState != enMoveState.Idle)
                {
                    return;
                }

                floorButton.ButtonColorUI();

                if (floorButton.Name.Contains("Open"))
                {
                    // 문 열기 버튼을 땔 때 일정 시간 뒤 문 닫힘
                    controller.DoorOpenAndDelayCloseThread();
                }
            }
        }