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

Вниз

Что здесь неправильно?   Найти похожие ветки 

 
Витамин   (2002-03-02 18:25) [0]

wl:=getwindowlong(handler,GWL_STYLE);
if (wl and WS_OVERLAPPED)<>0 then some_proc(handler);

wl объявлена как Longint. По идее в процедуру some_proc должен передаваться хандлер окна со стилем WS_OVERLAPPED, но этого почему-то не происходит. В чем тут дело?


 
VuDZ ©   (2002-03-02 18:32) [1]

а что происходит?


 
Dimaond Cat ©   (2002-03-02 23:03) [2]

вообще-то если внимательно посмотреть то WS_OVERLAPPED сам по себе =0 вот кусок файла windows.pas
const
{ Window Styles }
{$EXTERNALSYM WS_OVERLAPPED}
WS_OVERLAPPED = 0;

соответственно при данной постановке, твой if при любом wl будет пролетать мимо


 
Anatoly Podgoretsky ©   (2002-03-03 00:01) [3]

Это как раз пример что не надо резельтат логическиз операций сравнивать с нулем
Правильнее делать следующее if (wl and flag) = flag и не требуется знать значение флага.


 
Витамин   (2002-03-03 12:14) [4]

У меня есть хук, который перехватывает создание окна (WH_CALLWNDPROCRET, перехват WM_CREATE). ну и по идее должны обрабатываться окна с WS_OVERLAPPED, но не происходит!



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
3-17501
Filat
2002-04-12 15:44
2002.05.06
Не стартует 7.0? Ошибка 1069 !!! Что делать?


1-17615
Сергей Чурсин
2002-04-20 19:31
2002.05.06
В OnMouseMove не срабатывает Form.Cursor:=... ?


3-17503
MAxiMum
2002-04-12 19:37
2002.05.06
Как добавить пользователя и пароль программно?


1-17585
Stan Orlov
2002-04-22 15:35
2002.05.06
Подскажите компонент типа MDI-Tab ...


4-17747
Igor_thief
2001-12-20 12:04
2002.05.06
System tray