社区
游戏开发
帖子详情
向左上运动的虚拟键盘值等问题
bzw2000
2003-08-27 12:01:26
1)初学API,只知道物体向左(VK_LEFT),向右(VK_RIGHT)都能表示,不知道向左上运动怎么表示啊?好象虚拟键盘值表里没有 是不是和计时器设定有什么关系啊
2)还有就是消息处理函数WndProc声明中的第三个参数wParam(WPARAM型的)和第四个参数lParam(LPARAM型的)有什么具体作用啊?
wParam是不是只表示虚拟键盘值??
...全文
19
6
打赏
收藏
向左上运动的虚拟键盘值等问题
1)初学API,只知道物体向左(VK_LEFT),向右(VK_RIGHT)都能表示,不知道向左上运动怎么表示啊?好象虚拟键盘值表里没有 是不是和计时器设定有什么关系啊 2)还有就是消息处理函数WndProc声明中的第三个参数wParam(WPARAM型的)和第四个参数lParam(LPARAM型的)有什么具体作用啊? wParam是不是只表示虚拟键盘值??
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
subzero
2003-11-04
打赏
举报
回复
int status;
raw_key = inp(0x60);
status = inp(0x61);
outp(0x61,status & 0x80);
outp(0x61,status);
outp(0x20,0x20);
建一个键盘的isr
WQ771211
2003-11-04
打赏
举报
回复
请问在DOS下该怎么办呢?
我用inportb监视60端口,发现后面按下的键总是打断前面按下的键
不能获取是否两个键同时按下
DarthVader
2003-08-27
打赏
举报
回复
第二个问题 寻开心已经讲的很明白了
wparam和lparam是用来携带一些附属信息的
根据消息的不同而有不同含义的
比如在WM_LBUTTONDOWN里面wParam含有键盘特殊键信息(shift/ctrl是否按下等)
而lParam则包含了鼠标当时位置
DarthVader
2003-08-27
打赏
举报
回复
(1)如果用KeyDown/Up消息的话,不能判断键同时按下
你可以用DirectInput 来获得一张对应按键状态的表
其中的项为0,键未被按下,为1,则处于按下状态。
那么判断多个键同时按下就很简单了,只要看对应的表项是否全部为1即可。
在DX_SDK中有对DirectInput的封装,再看看例子,用起来应该不难。
不用DInput,另一个办法是自己改写键盘中断,用内嵌汇编和c都可以,思想差不多,
就是维护一张对应按键状态的表,可以同时记录不同键的状态。
还有一个办法就是用API函数GetAsyncKeyState(),加上虚拟键码,可以达到相同目的。
// these read the keyboard asynchronously
#define KEY_DOWN(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000) ? 1 : 0)
#define KEY_UP(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000) ? 0 : 1)
这个比较好用,以你的例子作个示范:
if( KEY_DOWN(VK_LEFT) && KEY_DOWN(VK_UP) )
{
// todo:add you own handling code here
......
}
寻开心
2003-08-27
打赏
举报
回复
左上运动是左运动+上运动
看你的键盘处理方式,如果是使用windows的消息机制,它不会直接支持这种状态的。
但是你可以使用状态查询的办法,在键盘消息当中,调用GetKeyState函数,直接检查你使用的键盘的状态,自己来处理。
wparam和lparam根据消息的性质不同,有不同的定义。如果是处理键盘,看MSDN当中WM_KEYDOWN消息的说明
flyingakain
2003-08-27
打赏
举报
回复
好贴!
Power Query在Excel中实战案例应用课程 数据整理分析M语
Power Query是一个Excel内置功能(获取与转换中... 详细讲解功能应用,掌握多表合并与追加查询,将数据整理为规范化数据,利用M语言解决
问题
。 课程分为4章,44节课,本课程提供配套素材,大家在电脑端
左上
角下载即可。
C#
虚拟
鼠标和
键盘
按键(三)【SendInput】
在前面两篇“C#
虚拟
键盘
按键(一)【SendKeys】”和“C#
虚拟
键盘
按键(二)【keybd_event】”文章中,我们讲了
虚拟
键盘
按键的方法,它们只能
虚拟
键盘
的按键操作,不能
虚拟
鼠标。本文介绍的Window API的SendInput...
Unity脚本类 ---- Input类,
虚拟
轴与插
值
方法
虚拟
按钮有三个
值
--- 1 - 0 - -1 ,当我们没有按到
虚拟
按钮对应的任何真实按钮时,
虚拟
按钮对应的
值
是0,按了正向按钮就会变到1,按负向就是变到-1,松开按键则
值
都会回到0。2.使用上面这个方法还需要处理一个
问题
...
unity-简单小游戏 控制小球(2)
保存代码运行游戏,会发现小球缓慢地向右边移动(向左边移动,把代码中x位置的
值
修改为-1,前后修改z轴)。选中Hierarchy窗口中的Main Camera,点击
左上
角第二个坐标图案的按钮,调整摄像机的位置,点击
左上
角第三个...
用GUI自动控制
键盘
和鼠标
用GUI自动控制
键盘
和鼠标 --出处 https://automatetheboringstuff.com/chapter18/用GUI自动控制
键盘
和鼠标了解用于编辑电子表格,下载文件和启动...这些程序可以通过向他们发送
虚拟
按键和鼠标点击来控制其他应用...
游戏开发
8,303
社区成员
23,682
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章