Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# Windows Forms

Войти
Регистрация
Восстановить пароль
 
Perdywok
0 / 0 / 0
Регистрация: 16.05.2015
Сообщений: 66
#1

Кнопка мыши для выхода из бесконечного цикла while - C#

31.05.2017, 20:10. Просмотров 97. Ответов 1
Метки нет (Все метки)

Здравствуйте!Создал программу для мониторинга состояния свободного пространства на системных дисках, которая при превышении определенного лимита будет выводить ошибку. Вроде бы все отлично, но пока лимит не превышен пользователь никоим образом не может приостановить работу программы(на форму нельзя нажать). Хотелось бы чтоб когда пользователь нажимал на окно(mouse click) цикл while останавливался и в форме можно было менять заданный лимит.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
        private void button1_Click(object sender, EventArgs e)
        {
            if (comboBox1.Text != "" && textBox3.Text != "")
            {
                try
                {
                    DriveInfo Drives = new DriveInfo(comboBox1.Text);
                    textBox1.Text = Drives.TotalSize.ToString();
                    textBox2.Text = Drives.AvailableFreeSpace.ToString();
                    Method();
                }
                catch (Exception)
                {
                    MessageBox.Show("At first choose available driver and limitation");
                }
            }
            else
            {
                MessageBox.Show("At first fill fields available driver and limitation");
            }
        }
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
       private void Method()
        {
 
            while (true)
            {
                Thread.Sleep(500);
                if (Int64.Parse(textBox2.Text) > Int64.Parse(textBox3.Text))
                {
                    MessageBox.Show("occupied space on the drive more then limit");
                    break;
                }
                else
                {
                    continue;
                }
            }
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2017, 20:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Кнопка мыши для выхода из бесконечного цикла while (C#):

.NET 4.x Когда кнопка мыши зажата, событие попадание курсора мыши в фокус контрола не работает - C#
Есть несколько контролов на форме, на все есть событие возникающее когда мышь попадает на этот контрол, но когда зажать клавишу мыши,...

Кнопка выхода в меню - C#
как сделать чтобы при нажатии на кнопку выход в меню, выходило диалоговое окно с сообщением "вы уверены что хотите выйти?" ниже этого...

Выход из бесконечного цикла в форме кнопкой - C#
Добрый день. У меня в ВинФорме при нажатии кнопки запускается бесконечный цикл. В этом цикле идёт строчка кода СЛЕЕП. Которая ...

Создание бесконечного цикла и его остановка - C#
Ребят, суть вопроса в следующем. Нужно создать такой цикл, который будет начинаться при включении Checkbox'a и останавливаться...

Кнопка, убегающая от указателя мыши - C#
Помогите написать программу!! Надо чтобы елемент button при контакте с курсором мыши "убегал" от курсора (не в произвольном направлении, а...

ComboBox и правая кнопка мыши - C#
Всем здравствуйте. На форме есть ComboBox, есть ContextMenu, есть ToolTip. Интересует возможность реализации такого функционала (и...

1
Shogun31337
319 / 315 / 90
Регистрация: 02.11.2016
Сообщений: 872
Завершенные тесты: 1
31.05.2017, 20:21 #2
Perdywok, запускайте Ваш Method() в отдельном потоке тогда форма не будет виснуть и можно будет обработать нажатие мыши. В классе формы создайте статическую переменную типа bool и в условии цикла проверяйте ее изменение. Тогда при нажатии на мышь, Вы сможете прервать цикл.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2017, 20:21
Привет! Вот еще темы с ответами:

Кнопка убегающая от указателя мыши - C#
Создать следующую программу: при наведении указателя мыши на кнопку ее координаты изменяются произвольным образом в пределах формы (кнопка...

Листбокс и правая кнопка мыши - C#
Есть листбокс. как с помощью ПЕРВОГО клика правой кнопки мыши выбрать "выбираемый " элемент? Добавлено через 1 час 31 минуту стоит...

Кнопка остановки/возобновления цикла - C#
как сделать кнопку остановки цикла?и кнопку возобновление цикла,после остановки?такое возможно? Добавлено через 1 минуту то есть...

Массив из миллиона элементов. Прогрессбар. Кнопка выхода из цикла. Application.ProcessMessages - Delphi
Доброго времени суток. Нужна помощь. Дан одномерный целочисленный массив из миллиона элементов. Его нужно отсортировать. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.