Исходники
Статьи
Языки программирования
.NET Delphi Visual C++ Borland C++ Builder C/С++ и C# Базы Данных MySQL MSSQL Oracle PostgreSQL Interbase VisualFoxPro Веб-Мастеру PHP HTML Perl Java JavaScript Протоколы AJAX Технология Ajax Освоение Ajax Сети Беспроводные сети Локальные сети Сети хранения данных TCP/IP xDSL ATM Операционные системы Windows Linux Wap Книги и учебники
Скрипты
Магазин программиста
|
Выполнение длительных операций в приложениях на DelphiЕсли приложение выполняет какую-либо операцию, занимающую много времени (более нескольких секунд), например, очень большой цикл с медленными операциями, то, во-первых, необходимо периодически (хотя бы раз в секунду), вызывать Application.ProcessMessages, позволяющую Windows заниматься своими обычными делами и, во-вторых, периодически проверять значение поля Application.Terminated, чтобы узнать, не завершил ли пользователь ваше приложение, не дождавшись результатов его работы. Поле Terminated приобретает значение True в тех случаях, когда пользователь закрывает главное окно программы или из программы вызывается Application.Terminate. Кроме того, следует учитывать, что установившиеся де-факто стандарты на интерфейс требуют отображения текущих результатов работы (легче всего это сделать с помощью компонента TProgressBar), либо, если это по каким-либо причинам невозможно (например, при выполнении SQL-запроса), просто отображения движущегося изображения, в символической форме демонстрирующего суть происходящего процесса (компонент TAnimate). |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Рейтинги
|