Вниз
Скачать: CL | DM;

Пересветка компонент на форме   Найти похожие ветки 

 
АМБ   (2005-02-25 10:22) [0]

При работе с программой вызывается OpenDialog. А после него остаются "не пересвеченные" компоненты. Можно ли это сделать как-то сразу для всех компонент, а не писать для каждого Refresh?


 
КаПиБаРа ©   (2005-02-25 10:40) [1]

Form.Refresh


 
Юрий Зотов ©   (2005-02-25 11:02) [2]

Что значит "не пересвеченные" - непонятно, но понятно, что в программе что-то не так с перерисовкой. Потому что если программе не мешать, то после закрытия диалога никакого Refresh вызывать не требуется.

Можно предположить, что после закрытия диалога программа начинает какую-то длительную обработку выбранного в диалоге файла, причем делает это в своем основном потоке. Ясно, что при такой структуре кода проблемы с перерисовкой действительно будут, причем одноразовый вызов Refresh почти ничего не даст, а циклический вызов Refresh (если он вообще возможен) существенно замедлит саму обработку.

Вывод - надо рассмотреть возможность организации обработки в дополнительном потоке.


 
АМБ   (2005-02-25 11:23) [3]

Для Юрия Зотова. Да, это интересно, организовать длительный процесс в дополнительном потоке. Не можете ли посоветовать как это делается. Или где об этом можно подробно почитать.


 
VMcL ©   (2005-02-25 11:31) [4]

>>АМБ   (25.02.05 11:23) [3]

В поставке Delphi есть демо-примеры (подпапка Demos). Посмотрите, там есть пример сортировки в трёх кодовых нитях (потоках), насколько я помню.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.023 c
14-1109105507
QuasiLamo
2005-02-22 23:51
2005.03.13
23 февраля


14-1108887275
YurikGL
2005-02-20 11:14
2005.03.13
SY576


1-1109605749
ПроНыРа
2005-02-28 18:49
2005.03.13
Компонент для работы с HTML


11-1092757042
ecm
2004-08-17 19:37
2005.03.13
2Kladov : Bug Fix OnIdle?


14-1108881595
olookin
2005-02-20 09:39
2005.03.13
Эта программа не отвечает...




   Наверх