Аватар для LVV
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750

Пауза в обработчике события

24.10.2018, 09:53. Показов 2659. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При нажатии на кнопку Button1 нужно сделать паузу между двумя действиями.
Например:
C++
1
2
3
4
5
6
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
{
                 button1 -> Text = L"Старт";
                 Sleep(2000);
                 button1 -> Text = L"Финиш";
}
Но этот код не работает.
Точнее, работает так, будто строка button1 -> Text = L"Старт"; отсутствует в коде.

Никакие попытки использовать Sleep, sleep, system("pause"), clock(), for( ; ; ) .... не привели к желаемому результату.
Вопрос: как создать временнУю паузу между выполнением двух действий в одном обработчике события?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.10.2018, 09:53
Ответы с готовыми решениями:

Как в одном обработчике события запустить другой обработчик события
Есть список listView1, который заполняется из массива PeopleListprivate void listView1_RetrieveVirtualItem(object sender,...

Как вызвать один обработчик события в другом обработчике события?
Здравствуйте. Подскажите пожалуйста, каким образом можно вызвать информацию из одного обработчика события в другой обработчик события? ...

Вызов GetElementById в обработчике события
Здравствуйте:) Пожалуйста, подскажите вот что. Есть такой вот код: <INPUT type="text" id="email"...

2
 Аватар для Sklifosofsky
1086 / 916 / 213
Регистрация: 29.09.2015
Сообщений: 1,019
24.10.2018, 23:01
Лучший ответ Сообщение было отмечено LVV как решение

Решение

Для каких целей нужно? Вы таким образом стопорите весь основной поток формы (визуализация тоже висит), поэтому вы и ничего не видите. Тут два варианта и оба костыльные.

1 Вставить перед Sleep(2000) (надеюсь это System::Threading::Thread::Sleep(2000) у вас)
Но это только позволит в текстбоксе отобразить текст, остальное повиснет сразу
C++
1
 System::Windows::Forms::Application::DoEvents();
2 Использовать метод который тупо занимает время на цикл проверяющий время. Вызывать вместо Sleep(2000)
C++
1
2
3
4
5
6
7
8
9
System::Void MySleep(int timeout)
{
    DateTime ^tm = gcnew DateTime(DateTime::Now.Ticks + timeout*10000);
    while (tm->Ticks>DateTime::Now.Ticks)
    {
        System::Windows::Forms::Application::DoEvents();
        System:Threading::Thread::Sleep(20);
    }
}
Я вообще не рекомендую делать такого рода задержки. Для этого существуют потоки, но они требуют конкретики в решении задач, сейчас нету смысла примерам бросаться, т.к. вопрос не совсем очевиден
1
 Аватар для LVV
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
25.10.2018, 05:57  [ТС]
Спасибо. Именно это мне и нужно было.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.10.2018, 05:57
Помогаю со студенческими работами здесь

Сделать счетчик в обработчике события
Борланд С++ 6. Стыдно но спрашу. Как реализовать увелечение значения переменной по нажатию. И не так что бы один раз...

Знак умножения в обработчике события
собственно компилятор ругается на любой знак умножения встречающися в коде выдает ошибку Unit1.cpp(28): E2087 Illegal use of pointer на...

Описание объекта события в обработчике
ПРивет всем!!!,всем известно событие .error в javascript error: function (e) { console.log(e); ...

Перенаправление в обработчике события Click
Понятно, что если в свойстве кнопке (postbackurl) вставить другую_страницу.aspx, то все операции Button1_Click не будет выполнен. ...

застреваю в обработчике события I2C
Всем привет, тестирую I2C модуль для различных целей на мк stm32f103RB, C8 , пока задача с одного микроконтроллера на другой такой же...


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

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

Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru