Возможное решение
1. Не используйте TButton, лучше напр. ТSpeedButton т.к. у него нет фокуса (по умолчанию Tab и стрелки переключают фокус между визуальными компонентами его имеющими)
2. Используйте процедуры Key/Mouse/Down/App у самой формы, код будет примерно такой
Код:
var flg: boolean = true;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_LEFT then
begin
if flg then
begin
MediaPlayer1.FileName:='1.mp3';
MediaPlayer1.Open;
flg:=false;
end;
MediaPlayer1.Play;
end;
end;
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_LEFT then
begin
MediaPlayer1.Close;
flg:=true;
end;
end;
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
MediaPlayer1.FileName:='1.mp3';
MediaPlayer1.Open;
MediaPlayer1.Play;
end;
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
MediaPlayer1.Close;
end;
выходит не нужно каждый раз открывать MCI интерфейс проигрывателя, наверное так