Пьяный дельфин от 19 января 2001

Hi !

Ну вот, после миллениума наступил похмеллениум и наш дельфин продолжает плавание по волнам времени уже в новом тысячелении

Премию за отчетный период получает Yevgeniy Morgenshtern, умеющий отрабатывать сообщения от таймера не обрабатывая сообщений от Windows, а также за лучший (на моем веку) алгоритм реализации задержки:

var CO:boolean;

procedure delay(n:integer);
label a1;
begin
    CO:=true;
    timer1.interval:=n*1000;
    timer1.enabled;=true;
a1:
    if CO then goto a1;
end;

Procedure timer1Timer(Sender...)
begin
CO:=false;
end;
И всё пpекpасно, пpиложение не висит, остальные пpоцедуpы pаботают (если они в дpугих потоках) и все довольны и счастливы



Проект доступен в OnLine по адресу: http://podgoretsky.com/DrunkenDolphin.html
(спасибо Анатолию Подгорецкому)

Все нижеприведенные материалы являются безусловной авторской собственностью соответствующих соавторов


09.01.2001 Sergey Popovichev

Подскажите PLZ как свернуть программу запущеную с помощью CreateProcess();

09.01.2001 Yevgeniy Morgenshtern

var CO:boolean;

procedure delay(n:integer);
label a1;
begin
    CO:=true;
    timer1.interval:=n*1000;
    timer1.enabled;=true;
a1:
    if CO then goto a1;
end;

Procedure timer1Timer(Sender...)
begin
CO:=false;
end;
И всё пpекpасно, пpиложение не висит, остальные пpоцедуpы pаботают (если они в дpугих потоках) и все довольны и счастливы

15.01.2001 Моторин Сергей

Пишу свою процедуру и хочу , чтобы она была доступна из других модулей. Hу ничего не получается. Я так понимаю, что должно быть такое средство, чтобы подружить другие модули с этй процедурой, но найти его не могу, подскажите пожалуйста как - буду премного благодарен(в документации и факах ответа не нашёл). Пока делаю так - копирую её через буфер в нужный модуль и в uses прописываю те модули которые в ней ипользую, но ведь это примитивно и раздувает исходник....:-(

19.01.2001 Alexey Suschikov

Здрасьте. С какого перепою память под текущие переменные выделяется в стеке????
И как ты предполагаешь работу с переменными, хранящимися в стеке?
(Я подразумеваю, что ты знаешь как устроен и работает стек...)

19.01.2001 Vladimir N. Smirnov

Прошу прощения за чайниковский вопрос и все таки: сабж, этому запросу приоритет присваиваится очень большой, на нажатия кнопок (на этой же форме) комп не реагирует. Как сделать так, чтобы оставалась на форме одна кнопка, приоритет которой был бы выше. И при нажатии на эту кнопку запрос можно было бы отменить не дожидаясь его завершения?


Иконку в system tray (где часы) вставляют функцией Shell_NotifyIcon
Bye ... Тенцер А.Л. tolik@katren.nsk.ru
ICQ 15925834