It is surprisingly easy to add joystick support to your Firemonkey app on Windows. Here is a nice third party component by WINSOFT for Delphi and C++ Builder for retrieving joystick position and status for any keys.
You can use wired or wireless joystick for your application like games, audio/video players and other application. I have tested this delphi component on a recent Windows 10. All functionality corresponds to the declared. All buttons my joystick successful detected. Also works analog sticks. Now let’s view this demo (included to instalation packeges)
The first thing you need to do is install component to Delphi. It’s very fast and simple! Look this video.
Demo included to component package. Now let’s look at the stages of working with a component.
# 1 stage – Enumerate controlers
Delphi/Pascal
1
2
3
forI:=0toFJoystick.ControllerCount-1do
ifFJoystick.Attached[I]then
ComboBox.Items.Add(FJoystick.ControllerName[I]);
# 2 stage – Connect to controler and get value ranges
Delphi/Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
FJoystick.Controller:=ComboBox.ItemIndex;
FJoystick.Active:=True;
MinX:=FJoystick.Capabilities.MinX;
MaxX:=FJoystick.Capabilities.MaxX;
MinY:=FJoystick.Capabilities.MinY;
MaxY:=FJoystick.Capabilities.MaxY;
ProgressBarR.Min:=FJoystick.Capabilities.MinR;
ProgressBarR.Max:=FJoystick.Capabilities.MaxR;
ProgressBarU.Min:=FJoystick.Capabilities.MinU;
ProgressBarU.Max:=FJoystick.Capabilities.MaxU;
ProgressBarV.Min:=FJoystick.Capabilities.MinV;
ProgressBarV.Max:=FJoystick.Capabilities.MaxV;
ProgressBarZ.Min:=FJoystick.Capabilities.MinZ;
ProgressBarZ.Max:=FJoystick.Capabilities.MaxZ;
# 3 stage – Now we can read current values from controller anytime.