Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2013, 00:15   #1
noname_06
Пользователь
 
Регистрация: 18.01.2009
Сообщений: 49
Счастье Создание горячих клавиш с VK_MENU

Доброго времени суток!
Было ТЗ, добавить хоткеи для открытия ссылок по Ctrl+0..9 и создания новой ссылки по Ctrl+Alt+0..9.
Изначально использовался такой обработчик события (рабочий):
Код:
procedure TForm1.WMHotkey(var msg: TWMHotkey);
var
  btn: TToolButton;
begin
  case msg.HotKey of
    0..9 : 
    begin
      btn := (FindComponent('btnHotLink' + Chr(msg.HotKey + $30))) as TToolButton;
      if Assigned(btn) then
        HotLinc(btn, Form1.Caption, cbbAdress.Text, GetKeyState(VK_MENU) < 0);
    end;
  end;
end;
Код:
procedure HotLinc(Sender: TObject; Name, URL: string; new: Boolean);
Теперь не срабатывает перехват состояния Alt. За время между последней проверкой работы и выявлением проблемы внесено много изменений (в том числе заново созданы формы в XE3 и прикручен AlphaSkins), но ничего, связанного с хуками или клавиатурой. KeyPreview = True.
Проверял по таймеру значение GetKeyState(VK_MENU): для нажатой возвращает -127/-128, для отпущенной - 0/1, т.е. должно работать.
Пробовал дополнительно зарегистрировать комбинации Ctrl+Alt+0..9 - ситуация не прояснилась.
noname_06 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отключение горячих клавиш Windows FaTaL Win Api 8 11.10.2011 17:37
1 кнопка в место горячих клавиш DenZ Общие вопросы Delphi 5 17.06.2011 08:46
регистрация горячих клавиш. phphel Общие вопросы Delphi 29 26.03.2011 19:44
установка собственных горячих клавиш в windows sum42 Помощь студентам 4 22.09.2009 21:58
Отлов горячих клавиш, Builder C++ 6.0 MsF C++ Builder 2 24.02.2009 11:02