Ejemplo n.º 1
0
 private void button2_Click(object sender, EventArgs e)
 {
     BatteryLimitCheck batMon = new BatteryLimitCheck();                   //Класс внутри которого реализован механизм проверки батареи
     string batteryCharge = batMon.CheckBattery().ToString();
     string batteryChargingState = batMon.getInformation("chargestate");
     lblEnergy.Text = batteryCharge;
     if (batteryChargingState.ToLower() == "online")
     {
         lblEnergy.Text += Environment.NewLine + "Статус: заряжается.";
     }
     else if (batteryChargingState.ToLower() == "offline")
     {
         lblEnergy.Text += Environment.NewLine + "Статус: не заряжается.";
     }
 }
Ejemplo n.º 2
0
 //Передаются предельное нижнее значение заряда батареи и имя пользователя
 //Основная задача программы - мониторинг состояния батареи
 private void FormWorkState()
 {
     Hide();
     string userName = tbUserName.Text;
     string percentStay = tbBateryPercentage.Text;
     string temperatureLimit = tbTemperatureLimit.Text;
     bool waitChargingOff = false;
     while (true)
     {
         if (!String.IsNullOrEmpty(percentStay.Trim()))
         {
             BatteryLimitCheck batMon = new BatteryLimitCheck();                   //Класс внутри которого реализован механизм проверки батареи
             int limitPercents = Convert.ToInt32(percentStay);
             float currentPercents = batMon.CheckBattery();
             string batteryCharge = batMon.getInformation("chargestate");
             if (batteryCharge.ToLower() == "online" && !waitChargingOff)
             {
                 string messageText = "Батарея подключена к питанию. Продолжить работу приложения при отключении зарядного устройства?";
                 string windowTitle = "Внимание " + userName + "!";
                 var result = MessageBox.Show(messageText, windowTitle, MessageBoxButtons.YesNo);
                 if (result == System.Windows.Forms.DialogResult.Yes)
                 {
                     waitChargingOff = true;
                 }
                 else if (result == System.Windows.Forms.DialogResult.No)
                 {
                     Application.Exit();
                 }
             }
             if (currentPercents < limitPercents && batteryCharge.ToLower() == "offline")
             {
                 this.TopMost = true;
                 string messageText = "Осталось заряда на " + currentPercents + "%" +
                     Environment.NewLine + "Для выхода из приложения нажмите Отмена или закройте окно." +
                     Environment.NewLine + "Для продолжения работы приложения нажмите OK";
                 string windowTitle = "Внимание " + userName + "!";
                 var result = MessageBox.Show(messageText, windowTitle, MessageBoxButtons.OKCancel);
                 if (result == System.Windows.Forms.DialogResult.OK)
                 {
                     Show();
                 }
                 else if (result == System.Windows.Forms.DialogResult.Cancel)
                 {
                     Application.Exit();
                 }
                 break;
             }
         }
         if (!String.IsNullOrEmpty(temperatureLimit.Trim()))
         {
             TemperatureLimitCheck tempCheck = new TemperatureLimitCheck();
             int limitTemperature = Convert.ToInt32(temperatureLimit);
             int currentTemperature = Convert.ToInt32(tempCheck.CheckTemperature());
             if (currentTemperature >= limitTemperature)
             {
                 this.TopMost = true;
                 string messageText = "Текущая температура " + currentTemperature + " превышает указанный максимум!" +
                     Environment.NewLine + "Для выхода из приложения нажмите Отмена или закройте окно." +
                     Environment.NewLine + "Для продолжения работы приложения нажмите OK";
                 string windowTitle = "Внимание " + userName + "!";
                 var result = MessageBox.Show(messageText, windowTitle, MessageBoxButtons.OKCancel);
                 if (result == System.Windows.Forms.DialogResult.OK)
                 {
                     Show();
                 }
                 else if (result == System.Windows.Forms.DialogResult.Cancel)
                 {
                     Application.Exit();
                 }
                 break;
             }
         }
     }
 }