Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.23;
Скачать: CL | DM;

Вниз

Исчезает надпись.   Найти похожие ветки 

 
Jony ©   (2002-12-13 10:46) [0]

Мастера! Объясните, пожалуйста, в чем дело?
Ставлю на форму панель, на которую помещаю ProgressBar и Label с соотведствующей предупреждающей надписью о прохождении процесса. У панели visual = false. В нужный момент делаю ее видимой. В зависимости от определенных условий на форме после появления панели может появиться еще и MessageDlg. И вот какая получается лажа. Если MessageDlg не появляется - не появляется и надпись на Label (причем, даже если должен, а я его просто глушил). Пробовал и язык менять, и вместо панели GroupBox с соответствующим заголовком (текстом с Label) ставить. Эффект тот-же. Где собака порылась?


 
Song ©   (2002-12-13 10:50) [1]

Собака порылась в Application.ProceeMessages
Поставь её внутрь цикла где у тебя просходят события, приводящие к изменению TProgressBar.Progress


 
Jony ©   (2002-12-13 11:01) [2]

Спасибо большое, помогло! Правда поставил я его спазу после визуализации панели.


 
Matolch ©   (2002-12-13 11:10) [3]

Для того, чтоб обеспечить перерисовку формы и/или обработку других сообщений вiндовс, след использовать метод Update или Application.ProcessMessages. При вызове MessageDlg приложением было получено сообщение WM_PAINT, на что форма и ответила, показав панель и проч.
Что кас. Application.ProcessMessages:
бывают очень неудачные прменения, например, когда пользователь ещё раз кликнет на кнопке вызова процесса. В этом случае надо Button.Enabled := false после входа в цикл.
Update - просто перерисовка.
В общем, если нет нужды перерисовывать форму постоянно, можно вызвать метод Update сразу после того, как показал панель, так и цикл быстрее выполняться будет.



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

Текущий архив: 2002.12.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
1-74772
danilka
2002-12-11 10:09
2002.12.23
SimpleXML - как пользоваться :))


14-74948
Шишкин Илья
2002-12-02 18:17
2002.12.23
Оптическая мышь от Genius


14-74894
stone
2002-12-04 12:43
2002.12.23
Компоненты для работы с модемом


3-74555
NONAME00
2002-12-04 12:04
2002.12.23
Ошибка с ADO


14-74917
Юрий Зотов
2002-10-28 23:15
2002.12.23
Начинающим программистам. Этап 2.