Главная страница
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.018 c
14-37853
Ozone
2003-12-23 05:40
2004.01.13
Оформление программ


1-37609
Alexander_spb
2003-12-28 15:43
2004.01.13
TCanvas


14-37931
Vlad Oshin
2003-12-23 13:05
2004.01.13
ping таймаут по умолчанию (WinNt)?


3-37571
Stas
2003-12-11 10:41
2004.01.13
dll и Ado


1-37776
AGN
2003-12-29 16:04
2004.01.13
MessageBox + Edit