Посылка сообщений
Какое сообщение нужно послать Опере (браузеру всмысле) чтобы она сделала один из следующих действий:
1) назад
2) вперед
3) остановить
4) обновить
5) домой
6) поиск
7) избранное
Какое сообщение нужно послать Опере (браузеру всмысле) чтобы она сделала один из следующих действий:
1) назад
2) вперед
3) остановить
4) обновить
5) домой
6) поиск
7) избранное
Ой, даже мне интересно стало! ;)
Совет такой: если у тебя мультимедийная клава, напиши тестовое приложение, которое будет показывать Message, wParam и lParam событий и понажимай соответствующие кнопки на клаве. Потом будет достаточно послать эти команды окну браузера, и voila!
Возможно, сооветствующие константы и описаны в каком-то SDK. Неспроста же мультимедийные клавы все браузеры поддерживают!
Ой, даже мне интересно стало! ;)
Совет такой: если у тебя мультимедийная клава, напиши тестовое приложение, которое будет показывать Message, wParam и lParam событий и понажимай соответствующие кнопки на клаве. Потом будет достаточно послать эти команды окну браузера, и voila!
Возможно, сооветствующие константы и описаны в каком-то SDK. Неспроста же мультимедийные клавы все браузеры поддерживают!
конкретный кусок кода можешь привести?
конкретный кусок кода можешь привести?
Издеваешься? Создай обработчик Application.OnMessage, фильтруй сообщения от клавы и показывай через ShowMessage.
Хотя, можно попробовать и SDK поискать...
Издеваешься? Создай обработчик Application.OnMessage, фильтруй сообщения от клавы и показывай через ShowMessage.
Хотя, можно попробовать и SDK поискать...
т.е. то что пришло от клавы тоже самое и посылать браузеру? ты уверен?:)
т.е. то что пришло от клавы тоже самое и посылать браузеру? ты уверен?:)
А почему нет? Если горит, можно попробовать как решение.
А искать SDK - это уже как хочешь.
Они же будут ловиться только для окна? брр не понимаю... и еще какое событие перехватывать?
пишу:
{
Memo1->Lines->Add(AnsiString(Msg.lParam)+ "\n");
Memo1->Lines->Add(AnsiString(Msg.wParam)+ "\n");
Handled = true;
}
и получается полная лажа!
TWMSize - тип к которому событие приводиться
WMSize - указатель на функцию, которая это сообщение обработает.
Подробнее - читай в справке про BEGIN_MESSAGE_MAP, VCL_MESSAGE_HANDLER и END_MESSAGE_MAP(TForm1)
назад - Alt+стрелка влево
вперёд - Alt+стрелка право
домой - Alt+Home
стоп - Esc
обновить - F5
TWMSize - тип к которому событие приводиться
WMSize - указатель на функцию, которая это сообщение обработает.
Подробнее - читай в справке про BEGIN_MESSAGE_MAP, VCL_MESSAGE_HANDLER и END_MESSAGE_MAP(TForm1)
и? :)
я так понимаю это обработка на уровне формы а мне нужно на уровне ОС
Ой, даже мне интересно стало! ;)
Совет такой: если у тебя мультимедийная клава, напиши тестовое приложение, которое будет показывать Message, wParam и lParam событий и понажимай соответствующие кнопки на клаве. Потом будет достаточно послать эти команды окну браузера, и voila!
Возможно, сооветствующие константы и описаны в каком-то SDK. Неспроста же мультимедийные клавы все браузеры поддерживают!
Можно и не писать ничего. В комплекте с Билдером ставится WinSight. Как раз для того, чтобы "шпионить" за окнами, смотреть сообщения и прочее...
Не знаю, как в опере, а ИЕ должен срабатывать на:
назад - Alt+стрелка влево
вперёд - Alt+стрелка право
домой - Alt+Home
стоп - Esc
обновить - F5
Опера тоже на них отзывается.
назад - Alt+стрелка влево
вперёд - Alt+стрелка право
домой - Alt+Home
стоп - Esc
обновить - F5
Черт побери! Надо было догадаться! Похоже, что оно и есть.