资源简介
前些日子做开发的时候用到游戏手柄,这两天整理了一下。这个代码是用C#编写的,希望对大家有所帮助。编译环境是VS2010。手柄的接口类型是DirectInput形式的,通过使用系统底层API函数来获取手柄状态。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace JoyKeys.DirectInputJoy
{
public class API
{
#region 消息定义
public const int MM_JOY1MOVE = 0x3A0;
public const int MM_JOY2MOVE = 0x3A1;
public const int MM_JOY1BUTTONDOWN = 0x3B5;
public const int MM_JOY2BUTTONDOWN = 0x3B6;
public const int MM_JOY1BUTTONUP = 0x3B7;
public const int MM_JOY2BUTTONUP = 0x3B8;
#endregion
#region 按钮定义
public const int JOY_BUTTON1 = 0x0001;
public const int JOY_BUTTON2 = 0x0002;
public const int JOY_BUTTON3 = 0x0004;
public const int JOY_BUTTON4 = 0x0008;
public const int JOY_BUTTON5 = 0x0010;
public const int JOY_BUTTON6 = 0x0020;
public const int JOY_BUTTON7 = 0x0040;
public const int JOY_BUTTON8 = 0x0080;
public const int JOY_BUTTON9 = 0x0100;
public const int JOY_BUTTON10 = 0x0200;
public const int JOY_BUTTON11 = 0x0400;
public const int JOY_BUTTON12 = 0x0800;
//Button up/down
public const int JOY_BUTTON1CHG = 0x0100;
public const int JOY_BUTTON2CHG = 0x0200;
public const int JOY_BUTTON3CHG = 0x0400;
public const int JOY_BUTTON4CHG = 0x0800;
#endregion
#region 手柄Id定义
///
/// 主游戏手柄Id
///
public const int JOYSTICKID1 = 0;
///
/// 副游戏手柄Id
///
public const int JOYSTICKID2 = 1;
#endregion
#region 错误号定义
///
/// 没有错误
///
public const int JOYERR_NOERROR = 0;
///
/// 参数错误
///
public const int JOYERR_PARMS = 165;
///
/// 无法正常工作
///
public const int JOYERR_NOCANDO = 166;
///
/// 操纵杆未连接
///
public const int JOYERR_UNPLUGGED = 167;
#endregion
///
/// 游戏手柄的参数信息JoystickEventArgs
///
[StructLayout(LayoutKind.Sequential)]
public struct JOYCAPS
{
public ushort wMid;
public ushort wPid;
[MarshalAs(UnmanagedType.ByValTStr SizeConst = 32)]
public string szPname;
public int wXmin;
public int wXmax;
public int wYmin;
public int wYmax;
public int wZmin;
public int wZmax;
public int wNumButtons;
public int wPeriodMin;
public int wPeriodMax;
public int wRmin;
public int wRmax;
public int wUmin;
public int wUmax;
public int wVmin;
public int wVmax;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 16896 2014-08-27 08:30 Jokstick\JoyKeys\bin\Debug\JoyKeys.dll
文件 62976 2014-08-27 08:30 Jokstick\JoyKeys\bin\Debug\JoyKeys.pdb
文件 6391 2014-08-22 13:52 Jokstick\JoyKeys\DirectInputJoy\API.cs
文件 8884 2014-08-22 13:50 Jokstick\JoyKeys\DirectInputJoy\JoystickAPI.cs
文件 1972 2014-05-12 10:07 Jokstick\JoyKeys\DirectInputJoy\JoystickEventArgs.cs
文件 12387 2014-08-22 13:51 Jokstick\JoyKeys\DirectInputJoy\Joystick_P.cs
文件 11758 2014-08-22 13:54 Jokstick\JoyKeys\DirectInputJoy\Joystick_V.cs
文件 2657 2014-08-27 08:30 Jokstick\JoyKeys\JoyKeys.csproj
文件 5906 2014-08-27 08:30 Jokstick\JoyKeys\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 2993 2014-08-27 08:30 Jokstick\JoyKeys\obj\Debug\JoyKeys.csproj.FileListAbsolute.txt
文件 16896 2014-08-27 08:30 Jokstick\JoyKeys\obj\Debug\JoyKeys.dll
文件 62976 2014-08-27 08:30 Jokstick\JoyKeys\obj\Debug\JoyKeys.pdb
文件 1346 2014-02-20 15:57 Jokstick\JoyKeys\Properties\AssemblyInfo.cs
文件 2658 2014-08-27 08:29 Jokstick\JoyKeys.sln
..A..H. 489984 2014-08-27 08:31 Jokstick\JoyKeys.suo
文件 16896 2014-08-27 08:30 Jokstick\JoyKeysTest\bin\Debug\JoyKeys.dll
文件 62976 2014-08-27 08:30 Jokstick\JoyKeysTest\bin\Debug\JoyKeys.pdb
文件 14336 2014-08-27 08:30 Jokstick\JoyKeysTest\bin\Debug\JoyKeysTest.exe
文件 34304 2014-08-27 08:30 Jokstick\JoyKeysTest\bin\Debug\JoyKeysTest.pdb
文件 11600 2014-08-27 08:31 Jokstick\JoyKeysTest\bin\Debug\JoyKeysTest.vshost.exe
文件 490 2012-06-02 22:34 Jokstick\JoyKeysTest\bin\Debug\JoyKeysTest.vshost.exe.manifest
文件 6964 2014-08-22 16:49 Jokstick\JoyKeysTest\FormTest.cs
文件 12364 2014-08-22 16:49 Jokstick\JoyKeysTest\FormTest.Designer.cs
文件 6014 2014-08-22 16:48 Jokstick\JoyKeysTest\FormTest.resx
文件 3905 2014-08-22 16:49 Jokstick\JoyKeysTest\JoyKeysTest.csproj
文件 2867 2014-08-22 13:46 Jokstick\JoyKeysTest\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6391 2014-08-27 08:30 Jokstick\JoyKeysTest\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 1801 2014-08-27 08:31 Jokstick\JoyKeysTest\obj\x86\Debug\JoyKeysTest.csproj.FileListAbsolute.txt
文件 1036 2014-08-27 08:30 Jokstick\JoyKeysTest\obj\x86\Debug\JoyKeysTest.csproj.GenerateResource.Cache
文件 15095 2014-08-27 08:30 Jokstick\JoyKeysTest\obj\x86\Debug\JoyKeysTest.csprojResolveAssemblyReference.cache
............此处省略31个文件信息
相关资源
- # 系统应用之TreeView控件显示树状磁盘
- C#\\网上商城购物管理信息系统
- 网络象棋游戏
- C#版二代身份证读卡器阅读程序
- C#扑克牌游戏源代码
- C#语言定义文档 中文版(微软官网)
- C#实现的基于BP神经网络的数据预测降
- C#上位机与单片机的完美结合内附有用
- C#年会抽奖软件-终极版
- 基于C#写的网上商城
- C# 微软TTS语音+Win7修复+发音人.rar
- C# WM wince UI集合版7 IN 1
- geckofx 45.0 C# FireFox
- C# 峰度和偏度计算
- C# 简单的作业调度
- C# 用三层架构实现简单的增删改查
- ArcEngine画点画线画面C#
- C#停车场管理系统的设计与实现VS201
- C#考勤管理系统完整源码,包含考勤与
- C# WPF实现读取显示DICOM
- C#爬取音乐源码.zip
- C# 调用MATLAB程序绘图
- 健身俱乐部管理系统的设计与实现.
- TIN生成算法实现.zip
- 学生通讯录
- matlab文件+dll文件和C#程序
- C#版本图书管理系统.rar
- C#语言基于SQL server 的图书管理系统
- 杜洋C#完整课程资料
- C# AE属性编辑
评论
共有 条评论