Главная страница
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.019 c
1-37645
Mike_forewer
2003-12-27 02:46
2004.01.13
Resource Editor


14-37926
Rocks
2003-12-17 21:35
2004.01.13
Устройство для переноса данных


7-37962
alexus
2003-10-29 15:17
2004.01.13
фильтр-перехватчик на файловую систему


3-37537
DimonNew
2003-12-17 14:07
2004.01.13
ADO без DSN (Paradox, dBase, FoxPro, Access)


3-37496
Spaniel
2003-12-17 12:39
2004.01.13
Есть ли в дельфях процедура, аналогичная PACK из foxpro?