我一直在尝试从usb操纵杆读取数据(x/y轴、按下的按钮等),我听说过DirectInput。我花了很长时间寻找一个像样的例子或演练,但收效甚微。如果有人能分享一个简单的教程,或者指引我到正确的地方,我将感激不尽。谢谢
编辑:尝试在Windows平台上实现此目标
发布于 2012-03-17 02:39:34
DirectX SDK中有一些DirectInput示例、源代码和编译后的二进制文件。其中包括Joystick
示例。老版本的开发工具包(查找"DirectX 9.0SDK“,大约2004-2005年)有更多的示例,多达12个!
操纵杆示例
描述操纵杆示例程序获取并显示操纵杆数据。
路径来源:(SDK根)\Samples\C++\DirectInput\Joystick
可执行文件:(SDK根目录)\Samples\C++\DirectInput\Bin\Joystick.exe
用户指南观察当您移动和扭动操纵杆、旋转油门轮以及按下各种组合按钮时,显示的数据如何变化。
应用程序轮询操纵杆以获取即时数据,以响应在对话过程中设置的计时器。
发布于 2012-03-17 02:39:30
这些可能会对你有所帮助:
实际上,Coding4Fun有很多有趣的东西。它开始于Win7发布的时候。
发布于 2016-12-22 15:53:09
我在github上使用了walbourn/directx-sdk-samples
,它工作得很好。
我必须按如下方式配置.pro
文件才能在Qt Creator上运行它:
TEMPLATE = app
CONFIG += c++14
CONFIG -= app_bundle
CONFIG -= qt
SOURCES += main.cpp
HEADERS += resource.h
DISTFILES += directx.ico joystick.rc
RC_FILE = joystick.rc
DEFINES -= UNICODE
#DEFINES += _MBCS
win32: QMAKE_CXXFLAGS_RELEASE -= -Zc:strictStrings
win32: QMAKE_CFLAGS_RELEASE -= -Zc:strictStrings
win32: QMAKE_CXXFLAGS_DEBUG -= -Zc:strictStrings
win32: QMAKE_CFLAGS_DEBUG -= -Zc:strictStrings
win32: QMAKE_CFLAGS -= -Zc:strictStrings
win32: QMAKE_CXXFLAGS -= -Zc:strictStrings
LIBS += -L"C:/Program Files (x86)/Windows Kits/10/Lib/10.0.10240.0/um/x64"
LIBS += -lshell32 -luser32 -ldxguid -lcomctl32 -lole32 -loleaut32 -ldinput8
https://stackoverflow.com/questions/9742611
复制相似问题