Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
4097 / 2702 / 590
Регистрация: 11.09.2009
Сообщений: 9,632

В Caption "(не отвечает), Progress Bar не перерисовывается. Как исправить?

26.11.2025, 19:34. Показов 8618. Ответов 102
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Старое однопоточное приложение, Delphi 7, исходник есть.
В нём Progress Bar, показывающий процент выполнения вывода по USB. Процесс занимает секунд 20-40.
Примерно 50 на 50, примерно посередине времени выполнения процесса, система (Windows 7) замораживает форму, скачком чуть смещает её вправо и вниз на десяток пикселей, в её Caption система добавляет "(не отвечает)", перерисовки Progress Bar естественно нет. Причём программа прекрасно продолжает правильно работать, после завершения функции вывода по USB, форма "размораживается", и программа продолжает дальше работать.

Можно ли исправить такое "поведение" каким-нибудь простым "костылём"? Очень уж не хочется всю эту программу переписывать под потоки.

Видимо с этим уже пытались бороться, - есть Application.Process_Messages в местах смены значения Progress Bar.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.11.2025, 19:34
Ответы с готовыми решениями:

Как сделать так что, если на 2 форме значение label.caption поменялось, то и на 1 форме у label.caption было такое же
У меня есть 2 формы. На них есть по одному label. Как сделать так что, если на второй...

Как работает Progress Bar
Все доброе время суток, не подскажете как работает Progress Bar и для чего он нужен?

Как связать FTP и progress bar?
P.S. как для скачивания(get), так и для отправки(put) файла на FTP. C помощью IDFTP.Sizе узнаю...

102
-293 / 14 / 1
Регистрация: 02.07.2021
Сообщений: 393
23.05.2026, 19:16
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Sinferno Посмотреть сообщение
если можно приостановить в нужный момент нить обработки, нарисовать что нужно и продолжить.
Об этом и говорю. Циклом остановить и рисуй как хочешь. Даже подсказал как проверять зависший порт и остановить всю операцию. Если в чтении все зависнет, из него уже не выйти, провод пошевелил и кирдык.
Уперлись в поток, он типа сам справится. Тогда костыли надо прикручивать, но это может не сработать. Опять тестить.
0
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
23.05.2026, 20:28
119zero, никто не писал, что поток "сам справится". В потоке если зависнет/долго не будет возвращаться функция чтения или записи, то от этого пользовательский UI не подвиснет и можно будет нажать кнопку прерывания операции, например, или ещё что-нибудь.

Всё это уже оговорено N раз на нескольких страницах.

 Комментарий модератора 
Дальнейшие повторы одних и тех же аргументов буду удалять.
0
-293 / 14 / 1
Регистрация: 02.07.2021
Сообщений: 393
23.05.2026, 20:51
Автор указал, что пока не прочитается, комп не реагирует на интерфейс, все зависает.
Работа с портом идет на низком уровне.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.05.2026, 20:51

Задание Progress bar
Имеется прграмма (её исполнительный фрагмент, больше в ней ничего нет), которая открывает текстовый...

Progress bar
как сделать так, чтобы при нажатии кнопки(загружающая в memo текст) она начинала работать, а когда...

«Progress Bar» в виде постепенно закрашиваемого посекторно круга
Помогите пожалуйста, «Progress Bar» в виде постепенно закрашиваемого посекторно круга. Выложите...

progress bar
Вообщем суть в этом у меня есть 3 формы в первой форме заполняются эдит1 потом открывается идет...

Progress bar квадратиками хочу на XE5
Вот. Все работает, но сплошной полосой, а мне нравятся олдскульные квадратики - где взять?


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

Или воспользуйтесь поиском по форуму:
103
Ответ Создать тему
Новые блоги и статьи
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки Правым кликом по серверу -> отладочная информация -> edit Заменить "net": "raw", на "net": "tcp", Нажать кнопку reload.
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru