Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 1
Регистрация: 06.02.2018
Сообщений: 307
1

Как сделать горячую клавишу?

04.05.2018, 13:05. Показов 2170. Ответов 14
Метки нет (Все метки)

например нажимаю сочетание клавиш ctrl+l открывается форма, как это сделать?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.05.2018, 13:05
Ответы с готовыми решениями:

Не получается сделать горячую клавишу
хочу что бы при нажатии 'W' кнопка однималась в вверх procedure TForm1.Button1KeyPress(Sender:...

Создать редактор горячих клавиш. В нем нужно задавать Горячую Клавишу и ей сопоставить текстовую строку
Доброго времени суток! Создаю программу для работы с базой данных. Программа служит для...

Обработка клавиш, как сделать так, чтобы зажать клавишу Q выполнялось определенное действие, если отпустить
Обработка клавиш, как сделать так, чтобы зажать клавишу Q выполнялось определенное действие, если...

Сделать неактивной клавишу MainMenu
Как сделать клавишу MainMenu неактивной при открытии формы?

14
3586 / 3057 / 822
Регистрация: 29.08.2013
Сообщений: 20,394
Записей в блоге: 2
04.05.2018, 13:07 2
Виртуальные коды для двух клавиш
0
0 / 0 / 1
Регистрация: 06.02.2018
Сообщений: 307
04.05.2018, 13:09  [ТС] 3
Delphi
1
2
3
4
5
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
 if (Key = 86) and (ssCtrl in Shift) then
  .......
end;
мне использовать этот код?
key = 86 это что значит?
0
3586 / 3057 / 822
Регистрация: 29.08.2013
Сообщений: 20,394
Записей в блоге: 2
04.05.2018, 13:13 4
Цитата Сообщение от kalanda Посмотреть сообщение
мне использовать этот код?
нет, этот не стоит

Цитата Сообщение от kalanda Посмотреть сообщение
это что значит?
что нужно открыть учебник
0
0 / 0 / 1
Регистрация: 06.02.2018
Сообщений: 307
04.05.2018, 13:15  [ТС] 5
такой возможности нет.
0
Эксперт Pascal/Delphi
4668 / 2655 / 832
Регистрация: 04.10.2012
Сообщений: 9,677
04.05.2018, 14:00 6
Лучший ответ Сообщение было отмечено kalanda как решение

Решение

Цитата Сообщение от kalanda Посмотреть сообщение
нажимаю сочетание клавиш ctrl+l открывается форма, как это сделать?
1. https://www.cyberforum.ru/post6920619.html.
2. пример использования. Потренируйтесь на нем, а затем реализуйте свою задачу.
1
0 / 0 / 1
Регистрация: 06.02.2018
Сообщений: 307
05.05.2018, 00:14  [ТС] 7
я благодарен за помошь ктрл+а Работает , но откудо брать коды клавиш? и еще такой вопрос поясните будтьте добры
WM_HOTKEY -
egisterHotKey(Handle, 0, MOD_CONTROL, $41); // -для команды Ctrl+A
UnRegisterHotKey(Handle, 0); - я понял при закрытии офрмы сбрасывается это?

Добавлено через 22 минуты
разобрался откдуо коды клавиш брать но поясните пожалуйста код

Добавлено через 37 минут
А например как сделать несколько горячих клавиш? я вот попробывал процедуры создать еще но с другими названиями не выходит, выполняются 2 сразу, как забиндить клавишу алт? vk_menu?
0
Пытливый
05.05.2018, 00:21
  #8

Не по теме:

Рецепт "Горячая клавиша"
Выдрать кнопку из клавиатуры и положить в микроволновку на 2 минуты. По вкусу можно добавить колесико мыши.

0
0 / 0 / 1
Регистрация: 06.02.2018
Сообщений: 307
05.05.2018, 00:22  [ТС] 9
например можно на одной форме сделать много бинд для клавиши? ктр+1 закрытие формы и бинд для клавиш ктр+f1 вывод шовмесадж или можно только с одной клавишей на форме ?

Добавлено через 40 секунд
Понимаете тему с горячими клавишами?
0
2124 / 1264 / 450
Регистрация: 29.05.2013
Сообщений: 5,668
05.05.2018, 00:31 10
Да сколько угодно. Для упрощения работы с ними есть хороший компонент ActionManager. Добавляйте в него новые элементы и назначайте им горячие клавиши из выпадающего списка.
0
0 / 0 / 1
Регистрация: 06.02.2018
Сообщений: 307
05.05.2018, 00:44  [ТС] 11
Немогди бы вы написать 2 процедуры для 2 клавиш например ctr+c открытие формы и ctr+v вывод шов месадж? Для примера . Я разобрался как сделать для одной а как для многих нет
0
пофигист широкого профиля
4310 / 2825 / 801
Регистрация: 15.07.2013
Сообщений: 16,390
05.05.2018, 02:09 12
[

Не по теме:

quote="kalanda;12364137"]Немогди бы вы написать 2 процедуры для 2 клавиш например ctr+c открытие формы и ctr+v вывод шов месадж? Для примера .[/quote]
Вот убил бы пустым мешком каждого, который бы написал такие горячие клавиши!
Не используйте стандартные сочетания клавиш для своих целей!

0
2124 / 1264 / 450
Регистрация: 29.05.2013
Сообщений: 5,668
05.05.2018, 11:15 13
Лучший ответ Сообщение было отмечено kalanda как решение

Решение

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
unit Unit47;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ActnList, PlatformDefaultStyleActnCtrls, ActnMan;
 
type
  TForm47 = class(TForm)
    ActionManager1: TActionManager;
    Action1: TAction;
    Action2: TAction;
    procedure Action1Execute(Sender: TObject);
    procedure Action2Execute(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form47: TForm47;
 
implementation
 
{$R *.dfm}
 
uses Unit48;
 
procedure TForm47.Action1Execute(Sender: TObject);
begin
 form48.ShowModal;
end;
 
procedure TForm47.Action2Execute(Sender: TObject);
begin
 MessageDlg('Message',mtInformation,[mbOK],0);
end;
 
end.
1
Миниатюры
Как сделать горячую клавишу?  
0 / 0 / 1
Регистрация: 06.02.2018
Сообщений: 307
05.05.2018, 16:52  [ТС] 14
Благодарочка всё работает)
0
320 / 158 / 65
Регистрация: 25.02.2018
Сообщений: 591
05.05.2018, 17:14 15
Цитата Сообщение от kalanda Посмотреть сообщение
key = 86 это что значит?
Это значит если почитать форум, можно найти много интересного, а именно:

Коды клавиш

живой пример того, что есть "86" у Вас и т.д.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2018, 17:14

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Сделать горячую клавишу на таймер
Помогите сделать горячую клавишу на таймер. Допустим нажимаешь клавишу F1, таймер включается,...

Как сделать глобальную "горячую клавишу"
Здравствуйте, написал код который при нажатие кнопки А выводит сообщение... Но почему-то это не...

Сделать горячую клавишу, что бы она включала fullscreen в плеере
Приветствую, как сделать горячую клавишу, что бы она включала fullscreen в плеере допустим на...

Как назначить кнопке горячую клавишу
Как назначить кнопке горячую клавишу, и чтобы клавиша вызывала события вниз/вверх/зажата или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.