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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.04.2009, 23:14   #1
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию Включить HotKeyManager

На форме 2 HotKeyManager ,в одном при нажатии на горячую клавишу выполняю код и отключаю эту клавишу что бы повторно не нажали. Отключаю так : HotKeyManager1.free;
Подскажите как програмно ее включить?
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 06.04.2009, 23:35   #2
Ntlegend
Форумчанин
 
Аватар для Ntlegend
 
Регистрация: 12.05.2007
Сообщений: 373
По умолчанию

а что такое HotKeyManager?? никогда не слышал.. горячие клавиши делаю так:
Код:
  private
    procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
***

var   hk1: integer;
****
//создаём горячую клавишу
procedure TForm1.Button1Click(Sender: TObject);
begin
hk1:=GlobalAddAtom('Hotkey1');
// - Hotkey1 уникальноен имя горяцей клавиши
RegisterHotKey(Handle, hk1, MOD_CONTROL, 107);
//MOD_CONTROL - клавиша модулятор
//107 - код виртуальной клавиши
end;

//обрабатываем сообщение
procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin
if Msg.HotKey=hk1 then 
 делаем что нада;
end;

//удаляем горячую клавишу
procedure TForm1.Button2Click(Sender: TObject);
begin
UnregisterHotKey(Handle, hk1);
end;
Перемен! - требуют наши сердца. Перемен! - требуют наши глаза.
В нашем смехе и в наших слезах, И в пульсации вен:
"Перемен!Мы ждем перемен!"
Ntlegend вне форума Ответить с цитированием
Старый 08.04.2009, 12:52   #3
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Цитата:
Сообщение от Михаил Юрьевич Посмотреть сообщение
На форме 2 HotKeyManager ,в одном при нажатии на горячую клавишу выполняю код и отключаю эту клавишу что бы повторно не нажали. Отключаю так : HotKeyManager1.free;
Подскажите как програмно ее включить?
Совсем недавно я помучившись в этом же направлении вообще отказался от HotKeyManager`а. Можно конечно программно попробовать его создавать сначала чтобы потом программно "убирать" (HotKeyManager1.free), но это еще не факт, что все будет гладко. Выход нашел в использовании ActionList из закладки Standart, но, предложенное Ntlegend во втором посте ручное создание/удаление тоже один из вариантов.
Вот небольшой пример на скорую руку с ActionList
Вложения
Тип файла: rar ActionList.rar (7.9 Кб, 23 просмотров)
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 08.04.2009, 16:32   #4
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию

Спасибо большое Kotofff,буду разбираться
А в пользу чего отказался от HotKeyManager`а?
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 08.04.2009, 16:59   #5
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

В зависимости от задачи ...
Но в основном ActionList теперь для таких нужд ...
Пишу в основном с помощью DevExpress - там реализация горячих клавиш просто классная и без посторонней помощи, но это совсем другая история не для этой темы ...
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как работать с HotKeyManager Михаил Юрьевич Общие вопросы Delphi 3 26.03.2009 22:12
включить vpn соединение bammm Общие вопросы C/C++ 1 14.01.2009 15:05
Включить удаленный рабочий стол CrazyProgramer Общие вопросы Delphi 1 09.10.2008 20:39