Вы можете проверить состояние кнопок вашего джойстика (ов), когда вам нужно проверить их ... если работает, даже если форма скрыта:
uses ..., MMSystem;
const
iJoystick = 1; // ID of the joystick
var
myjoy : TJoyInfoEx;
begin
myjoy.dwSize := SizeOf(myjoy);
myjoy.dwFlags := JOY_RETURNALL;
if (joyGetPosEx(iJoystick, @myjoy) = JOYERR_NOERROR) then
begin
if (myjoy.wbuttons and joy_button1) > 0 then // you can do it for all the buttons you need
begin
ShowMessage('button 1 down');
end;
end;
end;
В конце концов, вы можете создатьтаймер, который часто проверяет их статус, чтобы узнать, изменился ли статус, и вызвать то, что вам нужно ...