Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обновление формы и пауза в программе [D5, WinXP]


Страницы:   1 2

m-kirill-2003 ©   (2006-10-04 17:20:00) 

Как сделать, что бы данные в форме постоянно обновлялись. Если добавляю часы, надо что бы цифры менялись.  Версия про зацикливание не катит, надо что бы программа шла дальше.
И еще, как сделать поузу в программе, что бы она тупо отстановилась и подождала пару минут


m-kirill-2003   (2006-10-04 17:42:00) [21]

Ой спасибо! Я Ваш далжник на веке!
Курсковой по теме "АСУ путей и станции" сказали в Delphi вот и пытаюсь


ProgRAMmer Dimonych   (2006-10-04 17:36:00) [22]

Если нужны только часы - то кидаем на форму TTimer (в 7-ой Дельфе находится на закладке System), у него настраиваем интервал (на свой вкус и цвет, но в пределх разумного :)), создаём обработчик события OnTimer, который вызывается раз в стольо миллисекунд, сколько мы настроили в TTimer.Interval. Там пишем всё для обновления.
Если же дело часами не ограничивается, то бросаем на форму TApplicationEvents (в 7-ой Дельфе - на закладке Additional), у него есть событие OnIdle. Если в обработчике этого события регулярно писать строку Done:=False, то обработчик будет вызываться беспрерывно (почти :)). Там определяем, что же нужно делать в данный конкретный момент, и делаем это.
Будут вопросы - всё сюда. Чем смогу - помогу.


m-kirill-2003   (2006-10-04 17:31:00) [23]

Ой, можно про обновления по подробнее, куда что пихать


ProgRAMmer Dimonych   (2006-10-04 17:28:00) [24]

Насчёт обновления - OnTimer или (универсальное) OnIdle соответственно у TTimer и TApplicationEvents.

Насчёт паузы есть несколько вариантов:
1) Delay
2) for i:=1 to 1000000 do begin end;
3)
StartTickCount:=GetTickCount;
while GetTickCount-StartTickCount<Time do {Time - время задержки в мс}
Application.ProcessMessages;


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо