📄 directinput.pas
字号:
DI8DEVTYPE_MOUSE = $12;
{$EXTERNALSYM DI8DEVTYPE_MOUSE}
DI8DEVTYPE_KEYBOARD = $13;
{$EXTERNALSYM DI8DEVTYPE_KEYBOARD}
DI8DEVTYPE_JOYSTICK = $14;
{$EXTERNALSYM DI8DEVTYPE_JOYSTICK}
DI8DEVTYPE_GAMEPAD = $15;
{$EXTERNALSYM DI8DEVTYPE_GAMEPAD}
DI8DEVTYPE_DRIVING = $16;
{$EXTERNALSYM DI8DEVTYPE_DRIVING}
DI8DEVTYPE_FLIGHT = $17;
{$EXTERNALSYM DI8DEVTYPE_FLIGHT}
DI8DEVTYPE_1STPERSON = $18;
{$EXTERNALSYM DI8DEVTYPE_1STPERSON}
DI8DEVTYPE_DEVICECTRL = $19;
{$EXTERNALSYM DI8DEVTYPE_DEVICECTRL}
DI8DEVTYPE_SCREENPOINTER = $1A;
{$EXTERNALSYM DI8DEVTYPE_SCREENPOINTER}
DI8DEVTYPE_REMOTE = $1B;
{$EXTERNALSYM DI8DEVTYPE_REMOTE}
DI8DEVTYPE_SUPPLEMENTAL = $1C;
{$EXTERNALSYM DI8DEVTYPE_SUPPLEMENTAL}
{$ENDIF} (* DIRECTINPUT_VERSION <= 0x700 *)
DIDEVTYPE_HID = $00010000;
{$EXTERNALSYM DIDEVTYPE_HID}
{$IFNDEF DIRECTINPUT_VERSION_8} (* #if DIRECTINPUT_VERSION <= 0x700 *)
DIDEVTYPEMOUSE_UNKNOWN = 1;
{$EXTERNALSYM DIDEVTYPEMOUSE_UNKNOWN}
DIDEVTYPEMOUSE_TRADITIONAL = 2;
{$EXTERNALSYM DIDEVTYPEMOUSE_TRADITIONAL}
DIDEVTYPEMOUSE_FINGERSTICK = 3;
{$EXTERNALSYM DIDEVTYPEMOUSE_FINGERSTICK}
DIDEVTYPEMOUSE_TOUCHPAD = 4;
{$EXTERNALSYM DIDEVTYPEMOUSE_TOUCHPAD}
DIDEVTYPEMOUSE_TRACKBALL = 5;
{$EXTERNALSYM DIDEVTYPEMOUSE_TRACKBALL}
DIDEVTYPEKEYBOARD_UNKNOWN = 0;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_UNKNOWN}
DIDEVTYPEKEYBOARD_PCXT = 1;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_PCXT}
DIDEVTYPEKEYBOARD_OLIVETTI = 2;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_OLIVETTI}
DIDEVTYPEKEYBOARD_PCAT = 3;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_PCAT}
DIDEVTYPEKEYBOARD_PCENH = 4;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_PCENH}
DIDEVTYPEKEYBOARD_NOKIA1050 = 5;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_NOKIA1050}
DIDEVTYPEKEYBOARD_NOKIA9140 = 6;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_NOKIA9140}
DIDEVTYPEKEYBOARD_NEC98 = 7;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_NEC98}
DIDEVTYPEKEYBOARD_NEC98LAPTOP = 8;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_NEC98LAPTOP}
DIDEVTYPEKEYBOARD_NEC98106 = 9;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_NEC98106}
DIDEVTYPEKEYBOARD_JAPAN106 = 10;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_JAPAN106}
DIDEVTYPEKEYBOARD_JAPANAX = 11;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_JAPANAX}
DIDEVTYPEKEYBOARD_J3100 = 12;
{$EXTERNALSYM DIDEVTYPEKEYBOARD_J3100}
DIDEVTYPEJOYSTICK_UNKNOWN = 1;
{$EXTERNALSYM DIDEVTYPEJOYSTICK_UNKNOWN}
DIDEVTYPEJOYSTICK_TRADITIONAL = 2;
{$EXTERNALSYM DIDEVTYPEJOYSTICK_TRADITIONAL}
DIDEVTYPEJOYSTICK_FLIGHTSTICK = 3;
{$EXTERNALSYM DIDEVTYPEJOYSTICK_FLIGHTSTICK}
DIDEVTYPEJOYSTICK_GAMEPAD = 4;
{$EXTERNALSYM DIDEVTYPEJOYSTICK_GAMEPAD}
DIDEVTYPEJOYSTICK_RUDDER = 5;
{$EXTERNALSYM DIDEVTYPEJOYSTICK_RUDDER}
DIDEVTYPEJOYSTICK_WHEEL = 6;
{$EXTERNALSYM DIDEVTYPEJOYSTICK_WHEEL}
DIDEVTYPEJOYSTICK_HEADTRACKER = 7;
{$EXTERNALSYM DIDEVTYPEJOYSTICK_HEADTRACKER}
{$ELSE}
DI8DEVTYPEMOUSE_UNKNOWN = 1;
{$EXTERNALSYM DI8DEVTYPEMOUSE_UNKNOWN}
DI8DEVTYPEMOUSE_TRADITIONAL = 2;
{$EXTERNALSYM DI8DEVTYPEMOUSE_TRADITIONAL}
DI8DEVTYPEMOUSE_FINGERSTICK = 3;
{$EXTERNALSYM DI8DEVTYPEMOUSE_FINGERSTICK}
DI8DEVTYPEMOUSE_TOUCHPAD = 4;
{$EXTERNALSYM DI8DEVTYPEMOUSE_TOUCHPAD}
DI8DEVTYPEMOUSE_TRACKBALL = 5;
{$EXTERNALSYM DI8DEVTYPEMOUSE_TRACKBALL}
DI8DEVTYPEMOUSE_ABSOLUTE = 6;
{$EXTERNALSYM DI8DEVTYPEMOUSE_ABSOLUTE}
DI8DEVTYPEKEYBOARD_UNKNOWN = 0;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_UNKNOWN}
DI8DEVTYPEKEYBOARD_PCXT = 1;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_PCXT}
DI8DEVTYPEKEYBOARD_OLIVETTI = 2;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_OLIVETTI}
DI8DEVTYPEKEYBOARD_PCAT = 3;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_PCAT}
DI8DEVTYPEKEYBOARD_PCENH = 4;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_PCENH}
DI8DEVTYPEKEYBOARD_NOKIA1050 = 5;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_NOKIA1050}
DI8DEVTYPEKEYBOARD_NOKIA9140 = 6;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_NOKIA9140}
DI8DEVTYPEKEYBOARD_NEC98 = 7;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_NEC98}
DI8DEVTYPEKEYBOARD_NEC98LAPTOP = 8;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_NEC98LAPTOP}
DI8DEVTYPEKEYBOARD_NEC98106 = 9;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_NEC98106}
DI8DEVTYPEKEYBOARD_JAPAN106 = 10;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_JAPAN106}
DI8DEVTYPEKEYBOARD_JAPANAX = 11;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_JAPANAX}
DI8DEVTYPEKEYBOARD_J3100 = 12;
{$EXTERNALSYM DI8DEVTYPEKEYBOARD_J3100}
DI8DEVTYPE_LIMITEDGAMESUBTYPE = 1;
{$EXTERNALSYM DI8DEVTYPE_LIMITEDGAMESUBTYPE}
DI8DEVTYPEJOYSTICK_LIMITED = DI8DEVTYPE_LIMITEDGAMESUBTYPE;
{$EXTERNALSYM DI8DEVTYPEJOYSTICK_LIMITED}
DI8DEVTYPEJOYSTICK_STANDARD = 2;
{$EXTERNALSYM DI8DEVTYPEJOYSTICK_STANDARD}
DI8DEVTYPEGAMEPAD_LIMITED = DI8DEVTYPE_LIMITEDGAMESUBTYPE;
{$EXTERNALSYM DI8DEVTYPEGAMEPAD_LIMITED}
DI8DEVTYPEGAMEPAD_STANDARD = 2;
{$EXTERNALSYM DI8DEVTYPEGAMEPAD_STANDARD}
DI8DEVTYPEGAMEPAD_TILT = 3;
{$EXTERNALSYM DI8DEVTYPEGAMEPAD_TILT}
DI8DEVTYPEDRIVING_LIMITED = DI8DEVTYPE_LIMITEDGAMESUBTYPE;
{$EXTERNALSYM DI8DEVTYPEDRIVING_LIMITED}
DI8DEVTYPEDRIVING_COMBINEDPEDALS = 2;
{$EXTERNALSYM DI8DEVTYPEDRIVING_COMBINEDPEDALS}
DI8DEVTYPEDRIVING_DUALPEDALS = 3;
{$EXTERNALSYM DI8DEVTYPEDRIVING_DUALPEDALS}
DI8DEVTYPEDRIVING_THREEPEDALS = 4;
{$EXTERNALSYM DI8DEVTYPEDRIVING_THREEPEDALS}
DI8DEVTYPEDRIVING_HANDHELD = 5;
{$EXTERNALSYM DI8DEVTYPEDRIVING_HANDHELD}
DI8DEVTYPEFLIGHT_LIMITED = DI8DEVTYPE_LIMITEDGAMESUBTYPE;
{$EXTERNALSYM DI8DEVTYPEFLIGHT_LIMITED}
DI8DEVTYPEFLIGHT_STICK = 2;
{$EXTERNALSYM DI8DEVTYPEFLIGHT_STICK}
DI8DEVTYPEFLIGHT_YOKE = 3;
{$EXTERNALSYM DI8DEVTYPEFLIGHT_YOKE}
DI8DEVTYPEFLIGHT_RC = 4;
{$EXTERNALSYM DI8DEVTYPEFLIGHT_RC}
DI8DEVTYPE1STPERSON_LIMITED = DI8DEVTYPE_LIMITEDGAMESUBTYPE;
{$EXTERNALSYM DI8DEVTYPE1STPERSON_LIMITED}
DI8DEVTYPE1STPERSON_UNKNOWN = 2;
{$EXTERNALSYM DI8DEVTYPE1STPERSON_UNKNOWN}
DI8DEVTYPE1STPERSON_SIXDOF = 3;
{$EXTERNALSYM DI8DEVTYPE1STPERSON_SIXDOF}
DI8DEVTYPE1STPERSON_SHOOTER = 4;
{$EXTERNALSYM DI8DEVTYPE1STPERSON_SHOOTER}
DI8DEVTYPESCREENPTR_UNKNOWN = 2;
{$EXTERNALSYM DI8DEVTYPESCREENPTR_UNKNOWN}
DI8DEVTYPESCREENPTR_LIGHTGUN = 3;
{$EXTERNALSYM DI8DEVTYPESCREENPTR_LIGHTGUN}
DI8DEVTYPESCREENPTR_LIGHTPEN = 4;
{$EXTERNALSYM DI8DEVTYPESCREENPTR_LIGHTPEN}
DI8DEVTYPESCREENPTR_TOUCH = 5;
{$EXTERNALSYM DI8DEVTYPESCREENPTR_TOUCH}
DI8DEVTYPEREMOTE_UNKNOWN = 2;
{$EXTERNALSYM DI8DEVTYPEREMOTE_UNKNOWN}
DI8DEVTYPEDEVICECTRL_UNKNOWN = 2;
{$EXTERNALSYM DI8DEVTYPEDEVICECTRL_UNKNOWN}
DI8DEVTYPEDEVICECTRL_COMMSSELECTION = 3;
{$EXTERNALSYM DI8DEVTYPEDEVICECTRL_COMMSSELECTION}
DI8DEVTYPEDEVICECTRL_COMMSSELECTION_HARDWIRED = 4;
{$EXTERNALSYM DI8DEVTYPEDEVICECTRL_COMMSSELECTION_HARDWIRED}
DI8DEVTYPESUPPLEMENTAL_UNKNOWN = 2;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_UNKNOWN}
DI8DEVTYPESUPPLEMENTAL_2NDHANDCONTROLLER = 3;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_2NDHANDCONTROLLER}
DI8DEVTYPESUPPLEMENTAL_HEADTRACKER = 4;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_HEADTRACKER}
DI8DEVTYPESUPPLEMENTAL_HANDTRACKER = 5;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_HANDTRACKER}
DI8DEVTYPESUPPLEMENTAL_SHIFTSTICKGATE = 6;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_SHIFTSTICKGATE}
DI8DEVTYPESUPPLEMENTAL_SHIFTER = 7;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_SHIFTER}
DI8DEVTYPESUPPLEMENTAL_THROTTLE = 8;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_THROTTLE}
DI8DEVTYPESUPPLEMENTAL_SPLITTHROTTLE = 9;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_SPLITTHROTTLE}
DI8DEVTYPESUPPLEMENTAL_COMBINEDPEDALS = 10;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_COMBINEDPEDALS}
DI8DEVTYPESUPPLEMENTAL_DUALPEDALS = 11;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_DUALPEDALS}
DI8DEVTYPESUPPLEMENTAL_THREEPEDALS = 12;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_THREEPEDALS}
DI8DEVTYPESUPPLEMENTAL_RUDDERPEDALS = 13;
{$EXTERNALSYM DI8DEVTYPESUPPLEMENTAL_RUDDERPEDALS}
{$ENDIF} (* DIRECTINPUT_VERSION <= 0x700 *)
// #define GET_DIDEVICE_TYPE(dwDevType) LOBYTE(dwDevType)
function GET_DIDEVICE_TYPE(dwDevType: DWORD): Byte;
{$EXTERNALSYM GET_DIDEVICE_TYPE}
// #define GET_DIDEVICE_SUBTYPE(dwDevType) HIBYTE(dwDevType)
function GET_DIDEVICE_SUBTYPE(dwDevType: DWORD): Byte;
{$EXTERNALSYM GET_DIDEVICE_SUBTYPE}
{$IFDEF DIRECTINPUT_VERSION_5} (* #if(DIRECTINPUT_VERSION >= 0x0500) *)
(* This structure is defined for DirectX 3.0 compatibility *)
type
PDIDevCapsDX3 = ^TDIDevCapsDX3;
DIDEVCAPS_DX3 = packed record
dwSize: DWORD;
dwFlags: DWORD;
dwDevType: DWORD;
dwAxes: DWORD;
dwButtons: DWORD;
dwPOVs: DWORD;
end;
{$EXTERNALSYM DIDEVCAPS_DX3}
TDIDevCapsDX3 = DIDEVCAPS_DX3;
{$ENDIF} (* DIRECTINPUT_VERSION >= 0x0500 *)
PDIDevCaps = ^TDIDevCaps;
DIDEVCAPS = packed record
dwSize: DWORD;
dwFlags: DWORD;
dwDevType: DWORD;
dwAxes: DWORD;
dwButtons: DWORD;
dwPOVs: DWORD;
{$IFDEF DIRECTINPUT_VERSION_5} (* #if(DIRECTINPUT_VERSION >= 0x0500) *)
dwFFSamplePeriod: DWORD;
dwFFMinTimeResolution: DWORD;
dwFirmwareRevision: DWORD;
dwHardwareRevision: DWORD;
dwFFDriverVersion: DWORD;
{$ENDIF} (* DIRECTINPUT_VERSION >= 0x0500 *)
end;
{$EXTERNALSYM DIDEVCAPS}
TDIDevCaps = DIDEVCAPS;
const
DIDC_ATTACHED = $00000001;
{$EXTERNALSYM DIDC_ATTACHED}
DIDC_POLLEDDEVICE = $00000002;
{$EXTERNALSYM DIDC_POLLEDDEVICE}
DIDC_EMULATED = $00000004;
{$EXTERNALSYM DIDC_EMULATED}
DIDC_POLLEDDATAFORMAT = $00000008;
{$EXTERNALSYM DIDC_POLLEDDATAFORMAT}
{$IFDEF DIRECTINPUT_VERSION_5} (* #if(DIRECTINPUT_VERSION >= 0x0500) *)
DIDC_FORCEFEEDBACK = $00000100;
{$EXTERNALSYM DIDC_FORCEFEEDBACK}
DIDC_FFATTACK = $00000200;
{$EXTERNALSYM DIDC_FFATTACK}
DIDC_FFFADE = $00000400;
{$EXTERNALSYM DIDC_FFFADE}
DIDC_SATURATION = $00000800;
{$EXTERNALSYM DIDC_SATURATION}
DIDC_POSNEGCOEFFICIENTS = $00001000;
{$EXTERNALSYM DIDC_POSNEGCOEFFICIENTS}
DIDC_POSNEGSATURATION = $00002000;
{$EXTERNALSYM DIDC_POSNEGSATURATION}
DIDC_DEADBAND = $00004000;
{$EXTERNALSYM DIDC_DEADBAND}
{$ENDIF} (* DIRECTINPUT_VERSION >= 0x0500 *)
DIDC_STARTDELAY = $00008000;
{$EXTERNALSYM DIDC_STARTDELAY}
{$IFDEF DIRECTINPUT_VERSION_5b} (* #if(DIRECTINPUT_VERSION >= 0x050a) *)
DIDC_ALIAS = $00010000;
{$EXTERNALSYM DIDC_ALIAS}
DIDC_PHANTOM = $00020000;
{$EXTERNALSYM DIDC_PHANTOM}
{$ENDIF} (* DIRECTINPUT_VERSION >= 0x050a *)
{$IFDEF DIRECTINPUT_VERSION_8} (* #if(DIRECTINPUT_VERSION >= 0x0800) *)
DIDC_HIDDEN = $00040000;
{$EXTERNALSYM DIDC_HIDDEN}
{$ENDIF} (* DIRECTINPUT_VERSION >= 0x0800 *)
DIDFT_ALL = $00000000;
{$EXTERNALSYM DIDFT_ALL}
DIDFT_RELAXIS = $00000001;
{$EXTERNALSYM DIDFT_RELAXIS}
DIDFT_ABSAXIS = $00000002;
{$EXTERNALSYM DIDFT_ABSAXIS}
DIDFT_AXIS = $00000003;
{$EXTERNALSYM DIDFT_AXIS}
DIDFT_PSHBUTTON = $00000004;
{$EXTERNALSYM DIDFT_PSHBUTTON}
DIDFT_TGLBUTTON = $00000008;
{$EXTERNALSYM DIDFT_TGLBUTTON}
DIDFT_BUTTON = $0000000C;
{$EXTERNALSYM DIDFT_BUTTON}
DIDFT_POV = $00000010;
{$EXTERNALSYM DIDFT_POV}
DIDFT_COLLECTION = $00000040;
{$EXTERNALSYM DIDFT_COLLECTION}
DIDFT_NODATA = $00000080;
{$EXTERNALSYM DIDFT_NODATA}
DIDFT_ANYINSTANCE = $00FFFF00;
{$EXTERNALSYM DIDFT_ANYINSTANCE}
DIDFT_INSTANCEMASK = DIDFT_ANYINSTANCE;
{$EXTERNALSYM DIDFT_INSTANCEMASK}
// #define DIDFT_MAKEINSTANCE(n) ((WORD)(n) << 8)
function DIDFT_MAKEINSTANCE(n: Cardinal): Cardinal;
{$EXTERNALSYM DIDFT_MAKEINSTANCE}
// #define DIDFT_GETTYPE(n) LOBYTE(n)
function DIDFT_GETTYPE(n: Cardinal): Byte;
{$EXTERNALSYM DIDFT_GETTYPE}
// #define DIDFT_GETINSTANCE(n) LOWORD((n) >> 8)
function DIDFT_GETINSTANCE(n: Cardinal): Cardinal;
{$EXTERNALSYM DIDFT_GETINSTANCE}
const
DIDFT_FFACTUATOR = $01000000;
{$EXTERNALSYM DIDFT_FFACTUATOR}
DIDFT_FFEFFECTTRIGGER = $02000000;
{$EXTERNALSYM DIDFT_FFEFFECTTRIGGER}
{$IFDEF DIRECTINPUT_VERSION_5b} (* #if(DIRECTINPUT_VERSION >= 0x050a) *)
DIDFT_OUTPUT = $10000000;
{$EXTERNALSYM DIDFT_OUTPUT}
DIDFT_VENDORDEFINED = $04000000;
{$EXTERNALSYM DIDFT_VENDORDEFINED}
DIDFT_ALIAS = $08000000;
{$EXTERNALSYM DIDFT_ALIAS}
{$ENDIF} (* DIRECTINPUT_VERSION >= 0x050a *)
DIDFT_OPTIONAL = $80000000;
{$EXTERNALSYM DIDFT_OPTIONAL}
// #define DIDFT_ENUMCOLLECTION(n) ((WORD)(n) << 8)
function DIDFT_ENUMCOLLECTION(n: Cardinal): Cardinal;
{$EXTERNALSYM DIDFT_ENUMCOLLECTION}
const
DIDFT_NOCOLLECTION = $00FFFF00;
{$EXTERNALSYM DIDFT_NOCOLLECTION}
type
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -