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

Вниз

прерывание исполнения программы   Найти похожие ветки 

 
mik_1   (2003-12-28 18:29) [0]

Дорогие специалисты!
Вопрос касаемо языка Pascal. Кто знает, как запрограммировать приостановку исполения программы, напр. во время вывода графики, командой с клавиатуры/мыши? Как это можно реализовать практически на Object Pascal? Есть ли какие-нибудь стандартные функции/прерывания и т.п. Заранее благодарю.


 
Иван Шихалев ©   (2003-12-28 18:44) [1]

Языка этот вопрос уж точно не касается никоим образом. Если имеется длинный процесс вывода, то можно а) вывести его в отдельный поток (и получить большие проблемы с синхронизацией) и б) в самом процессе предусмотреть Application.ProcessMessages(), после чего проверять некий флаг, который будет устанавливаться по сообщениям с клавиатуры.


 
Юрий Зотов ©   (2003-12-28 21:33) [2]

> mik_1 (28.12.03 18:29)

Для программы с одной формой, например, так:

with Application, MainForm do
begin
Enabled := False;
while not Enabled do ProcessMessages
end;

Снятие блокировки (например, по приходу какого-то сообщения, по событию таймера и пр.):
Application.MainForm.Enabled := True;



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
1-37665
Mirbius
2003-12-26 16:20
2004.01.13
Версии


1-37701
DimaK
2003-12-24 22:50
2004.01.13
В чем моя ошибка?


11-37601
Separator
2003-04-11 10:42
2004.01.13
KOL и MySQL


14-37865
stud
2003-12-23 17:02
2004.01.13
заставить вин2000 роутить


1-37676
ГС ТОФ
2003-12-26 14:17
2004.01.13
Exel