Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.02.05;
Скачать: CL | DM;

Вниз

Горячие клавиши   Найти похожие ветки 

 
DJ_UZer ©   (2008-03-22 18:15) [0]

Привет все.. Я пишу программу и мне нужно использовать горячии клавиши и сразу у меня возникло 2 вопроса:
1. Как сделать горячии клавиши, пробовал не получилось...
2. Как сделать, чтобы данные клавиши работали и тогда, когда программа свернута?
Всем заранее спасибо..


 
kichrot   (2008-03-25 13:31) [1]

procedure TForm1.KOLForm1FormCreate(Sender: PObj);
begin
   //например комбинация клавиш Ctrl + Пробел
   RegisterHotkey( Form.Handle, 1001, MOD_Control, vk_Space);
end;

function TForm1.KOLForm1Message(var Msg: tagMSG; var Rslt: Integer): Boolean;
begin
   Result := FALSE;
   if (msg.message=WM_HOTKEY)
       and (msg.wParam=1001)
       and (Length(ObjEventsArray)>0) then
   begin
       //свой код
   end;
end;


 
kichrot   (2008-03-25 13:35) [2]


> and (Length(ObjEventsArray)>0)

В предыдущем примере это не нужно.


 
имя   (2009-04-19 21:31) [3]

Удалено модератором


 
AHTOLLlKA   (2009-05-03 01:34) [4]

да.. и не забудь про UnRegisterHotKey

type

  TForm1 = class(TForm)

    procedure FormCreate(Sender: TObject);

    procedure FormDestroy(Sender: TObject);

  protected

    procedure hotykey(var msg:TMessage); message WM_HOTKEY;

  end;



var

  Form1: TForm1;

  id,id2:Integer;



implementation



{$R *.DFM}





procedure TForm1.hotykey(var msg:TMessage);

begin

  if (msg.LParamLo=MOD_CONTROL) and (msg.LParamHi=81) then

  begin

    ShowMessage("Ctrl + Q wurde gedrьckt !");

  end;



  if (msg.LParamLo=MOD_CONTROL) and (msg.LParamHi=82)

then

  begin

    ShowMessage("Ctrl + R w!

urde gedrьckt !");

  end;

end;





procedure TForm1.FormCreate(Sender: TObject);

begin

  id:=GlobalAddAtom("hotkey");

  RegisterHotKey(handle,id,mod_control,81);



  id2:=GlobalAddAtom("hotkey2");

  RegisterHotKey(handle,id2,mod_control,82);

end;



procedure TForm1.FormDestroy(Sender: TObject);

begin

  UnRegisterHotKey(handle,id);

  UnRegisterHotKey(handle,id2);

end;



Страницы: 1 вся ветка

Текущий архив: 2012.02.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.007 c
8-1222096864
РФМ
2008-09-22 19:21
2012.02.05
Наличие картинки DBImage


2-1319714974
Очень Злой
2011-10-27 15:29
2012.02.05
Можно ли описать запись неизвестного заранее размера


2-1319835964
Alek
2011-10-29 01:06
2012.02.05
Передача метода класса по ссылке


15-1318859876
lextasy
2011-10-17 17:57
2012.02.05
Посоветуйте учебник по Delphi для школьника


4-1253690134
Tooreagen
2009-09-23 11:15
2012.02.05
Передать текст с помощью сообщений в другую программу (Delphi)