Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как перехватить нажатие мультемедийной клавиши? [D7, WinXP]


Andrew777 ©   (2005-09-20 15:58:00) 

Может кто знает.
Как перехватить нажатие мультемедийной клавиши на мультемелийной клаве.
Если обрабатывать событие OnKeyDown то он на всех 3-х клавишах которые я хочу перехватить возвращает значение 255, а мне их надо как-то отличить.


Andrew777   (2005-09-21 16:46:00) [1]

Я немного неправильно задал вопрос.
У меня на клаве есть кнопки Exel, Word и колёсико, вот их мне и неудаётся перехватить, а все остальные я и сам могу.


easy   (2005-09-20 17:51:00) [2]

unit Unit1;

interface

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

const
 WM_APPCOMMAND = $0319;
 APPCOMMAND_BROWSER_BACKWARD = 1;
 APPCOMMAND_BROWSER_FORWARD = 2;
 APPCOMMAND_BROWSER_REFRESH = 3;
 APPCOMMAND_BROWSER_STOP = 4;
 APPCOMMAND_BROWSER_SEARCH = 5;
 APPCOMMAND_BROWSER_FAVORITES = 6;
 APPCOMMAND_BROWSER_HOME = 7;
 APPCOMMAND_VOLUME_MUTE = 8;
 APPCOMMAND_VOLUME_DOWN = 9;
 APPCOMMAND_VOLUME_UP = 10;
 APPCOMMAND_MEDIA_NEXTTRACK = 11;
 APPCOMMAND_MEDIA_PREVIOUSTRACK = 12;
 APPCOMMAND_MEDIA_STOP = 13;
 APPCOMMAND_MEDIA_PLAY_PAUSE = 14;
 APPCOMMAND_LAUNCH_MAIL =15;
 APPCOMMAND_LAUNCH_MEDIA_SELECT = 16;
 APPCOMMAND_LAUNCH_APP1 = 17;
 APPCOMMAND_LAUNCH_APP2 = 18;
 APPCOMMAND_BASS_DOWN = 19;
 APPCOMMAND_BASS_BOOST = 20;
 APPCOMMAND_BASS_UP = 21;
 APPCOMMAND_TREBLE_DOWN = 22;
 APPCOMMAND_TREBLE_UP = 23;

type
 TForm1 = class(TForm)
 private
   { Private declarations }
   procedure WMAppCommand(var msg: TMessage); message WM_APPCOMMAND;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

{ TForm1 }

procedure TForm1.WMAppCommand(var msg: TMessage);
begin
  caption:=inttostr(msg.LParamHi);
end;

end.


Наверх

Титульная страница Поиск, карта сайта Написать письмо