![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как совершить перехват Message? [D6, Win95/98]
npAKTuk © (2003-11-07 06:43:00)
по факам понятно как отловить Message по winApi.
а как можно запретить его выполнение ?
на пример, юзер щелкает на кнопку закрытия окна, а окно не закрывается тк Windows не получил сообщение на закрытие.
кто сталкивался помогите мыслей или лучше примером
kDenis (2003-11-07 14:29:00) [1]
Кидай на форму TApplicationEvents и лови нужные сообщения, только незнаю какие...
Выглядеть это будет примерно так:
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
if(msg.message=WM_SYSCOMMAND)and(msg.wParam=SC_Close)then
Handled:=true;
end;
Только вместоWM_SYSCOMMANDиSC_Closeнужно поставить что-то более правильное...
Holy (2003-11-07 14:06:00) [2]
Во-первых wm_Close передается оконной функции. Во-вторых теоретически можно удалить сообщение из очереди, но практически я это не пробовал...+