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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2011, 14:22   #1
pavellyba
Пользователь
 
Регистрация: 01.12.2010
Сообщений: 84
Вопрос Как научить программу реагировать на сочетании клавиш

Как научить программу реагировать на сочетании клавиш, например Ctrl+L ?
pavellyba вне форума Ответить с цитированием
Старый 03.04.2011, 14:25   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

см Хоткей, HotKey
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 03.04.2011, 23:07   #3
pavellyba
Пользователь
 
Регистрация: 01.12.2010
Сообщений: 84
По умолчанию

А поподробней?
pavellyba вне форума Ответить с цитированием
Старый 03.04.2011, 23:38   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Компонент THotkey

И статьи про глобальные горячие клавиши в DElphi тебе помогут.
Человек_Борща вне форума Ответить с цитированием
Старый 03.04.2011, 23:48   #5
alexvav
Форумчанин
 
Регистрация: 23.11.2006
Сообщений: 152
По умолчанию

pavellyba
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ComCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    HotKey1: THotKey;
    MainMenu1: TMainMenu;
    asdd1: TMenuItem;
    Edit1: TEdit;
    procedure asdd1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure HotKey1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.asdd1Click(Sender: TObject);
begin
ShowMessage('dsadsad');
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
MainMenu1.Items[0].ShortCut:=HotKey1.HotKey;
end;

procedure TForm1.HotKey1Change(Sender: TObject);
begin
MainMenu1.Items[0].ShortCut:=0;
MainMenu1.Items[0].ShortCut:=HotKey1.HotKey;
end;

end.
alexvav вне форума Ответить с цитированием
Старый 04.04.2011, 08:08   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вот подробнее:
http://yandex.ua/yandsearch?date=&te...oc=10&lr=20554
В частности:
http://www.programmersforum.ru/showthread.php?t=8638
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.04.2011, 08:45   #7
Sparkman
220400
Форумчанин
 
Аватар для Sparkman
 
Регистрация: 21.05.2010
Сообщений: 726
По умолчанию

Цитата:
Сообщение от pavellyba Посмотреть сообщение
Как научить программу реагировать на сочетании клавиш, например Ctrl+L ?
Для локальных сочетаний клавиш:

1) кидаете на форму компонент ActionList из вкладки Standard (последний в списке);
2) на форме щелкаете левой кнопкой мыши по добавленному компоненту два раза;
3) в появившемся окне добавляете нужные вам Actions (кнопкой Insert - свои действия, Ctrl+Insert - стандартные действия);
4) после добавления Action, щелкаем на нем левой кнопкой грызуна;
5) в инспекторе объектов, в поле ShortCut набираем нужное сочетание клавиш (то бишь Ctrl+L);
6) если два раза щелкнуть левой кнопкой мышки по вставленному Action, то перейдем в место кода, который будет выполняться при нажатии заданного сочетания клавиш.
Cерьёзной помощи не ждите - помогаю в перерывах на "перекур".
Не существует ничего невозможного для человека, который не собирается ничего делать сам.
Не учите человека, если вы не его учитель.

Последний раз редактировалось Sparkman; 04.04.2011 в 08:49.
Sparkman вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как научить старую игру использовать многоядерность? OFPman Gamedev - cоздание игр: Unity, OpenGL, DirectX 62 04.04.2011 20:51
как создать программу имитирующую нажатие клавиш? MEGAPIXARI Фриланс 8 09.03.2010 17:46
как научить программу сохранять результаты ArtemSK Общие вопросы C/C++ 2 03.01.2010 17:02
Как научить русский Эксель английским командам? zealot_att Microsoft Office Excel 2 22.11.2009 00:50
Как заставить программу реагтровать на нажатия клавиш? AngelOfDeath Общие вопросы Delphi 9 07.04.2008 23:58