![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Пересветка компонент на форме [D7, Win2k]
АМБ © (2005-02-25 10:22:00)При работе с программой вызывается OpenDialog. А после него остаются "не пересвеченные" компоненты. Можно ли это сделать как-то сразу для всех компонент, а не писать для каждого Refresh?
VMcL (2005-02-25 11:31:00) [1]>> АМБ (25.02.05 11:23) [3]
В поставке Delphi есть демо-примеры (подпапка Demos). Посмотрите, там есть пример сортировки в трёх кодовых нитях (потоках), насколько я помню.
АМБ (2005-02-25 11:23:00) [2]Для Юрия Зотова. Да, это интересно, организовать длительный процесс в дополнительном потоке. Не можете ли посоветовать как это делается. Или где об этом можно подробно почитать.
Юрий Зотов (2005-02-25 11:02:00) [3]Что значит "не пересвеченные" - непонятно, но понятно, что в программе что-то не так с перерисовкой. Потому что если программе не мешать, то после закрытия диалога никакого Refresh вызывать не требуется.
Можно предположить, что после закрытия диалога программа начинает какую-то длительную обработку выбранного в диалоге файла, причем делает это в своем основном потоке. Ясно, что при такой структуре кода проблемы с перерисовкой действительно будут, причем одноразовый вызов Refresh почти ничего не даст, а циклический вызов Refresh (если он вообще возможен) существенно замедлит саму обработку.
Вывод - надо рассмотреть возможность организации обработки в дополнительном потоке.
КаПиБаРа (2005-02-25 10:40:00) [4]Form.Refresh