Форум программистов «Весельчак У»
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
Начало
Наши сайты
Галерея
Весельчак У
Наша Вики
Хранилище
Проекты
Правила
Правила форума
Правила русского языка
Помощь
Поиск
Календарь
Почта
Войти
Регистрация
Форум программистов «Весельчак У»
>
Программирование
>
Delphi
(Модератор:
x77
) > Тема:
Комбинации клавиш
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Комбинации клавиш (Прочитано 9757 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Harry
Команда клуба
Offline
Комбинации клавиш
«
:
22-10-2003 19:02 »
Столкнулся с необходимостью прописать для некоторых действий в программе клавиатурные комбинации. Что-то не выходит. В факах - тоже не нашел. Я попытался написать так:
procedure TfmPrihod.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=ord('U')) and (ssCtrl in Shift) then fmFind.Visible:=True;
end;
Т.е. по сочетанию CTRL+U должно появляться другое окно. Но этот код не работает. Подскажите, пожалуйста, как правильно написать.
Записан
Слабый пол силен в силу слабости сильного пола к слабому
Var-Alex
Гость
Комбинации клавиш
«
Ответ #1 :
23-10-2003 04:12 »
Создай Action и назначь ему HotKey. А если тебе надо что-бы твои гор клавиши работали дакже когда твоя программа не активна, то рой RegisterHotkey и иже с ними. В дельфовом хельпе есть.
Записан
DimOC
Гость
Комбинации клавиш
«
Ответ #2 :
23-10-2003 05:25 »
Просто у формы в OnKeyDown которой ты пишешь свой код с проверкой нажатия поставь свойство KeyPreview в True.
(форма будет первой перехватывать все нажатия клавиш)
Либо... есть еще один способ... когда я был неопытным и глупым, я создавал невидимый пункт в MainMenu и назначал ему ShortCut, а в процедуре выбора этого пункта уже писал что нужно делать.
Так что... сделать можно многое и через разные места.
Записан
Harry
Команда клуба
Offline
Комбинации клавиш
«
Ответ #3 :
23-10-2003 06:43 »
Класс, все работает
А про второй способ - насчет MainMenu - я знал, но увы... на этой форме меню быть не должно
Записан
Слабый пол силен в силу слабости сильного пола к слабому
Var-Alex
Гость
Комбинации клавиш
«
Ответ #4 :
24-10-2003 05:38 »
Что рабоатет? Про Action? Так ты ещё знай, что на один ХотКей может быть повешено несколько Action-ов, только так, что-бы они небыли активны в одно время. Свойство Enabled выставлять хорошо в событии Taction.OnUpdate...
Записан
Harry
Команда клуба
Offline
Комбинации клавиш
«
Ответ #5 :
24-10-2003 06:17 »
Action не пробовал еще, просто как советовал DimOK, поставил OnKeyDown в True и этого хватило. Но для собственного развития попробуи и другие методы
Записан
Слабый пол силен в силу слабости сильного пола к слабому
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Форум программистов «Весельчак У»
>
Программирование
>
Delphi
(Модератор:
x77
) > Тема:
Комбинации клавиш
Загружается...