我要发帖 回复

正式会员

22

主题

85

积分

0

专家分

:

私信
发表时间 : 2007-10-24 12:46:06 | 浏览 : 3242    评论 : 10
我设置了窗口焦点,还是不响应键盘消息,哪位热心的大哥能给一个mfc线程响应vp键盘消息的代码实例?
要在vp中响应按键,不要在mfc中响应按键

[ 本帖最后由 morty 于 2007-10-24 02:46 PM 编辑 ]

最近VR访客

wenxuanwenya 评论于2007-10-24 14:38:24
前面已有相关帖子了,好好找找
morty 评论于2007-10-24 14:49:16
我实现了键盘响应,但是开始运行时不响应任何按键,但是一旦打开别的窗口后再切换回vp的窗口,就可以响应按键消息了,哪位高人指点一下这是为什么呀
wenxuanwenya 评论于2007-10-24 17:18:23
设置VP窗口为活动窗口即可
kevin0442 评论于2007-10-24 20:11:38
需要设置VP窗口获得焦点,才能响应事件
另外需要设置VP的键盘和鼠标响应函数:
  vpWin->setKeyboardFunc(keyboardHandler);
    vpWin->setMouseFunc( mouseHandler);
具体的keyboardHandler和mouseHandler自己写,文档里有例子.
个人的一点体会,希望能对你有帮助
zhprain 评论于2007-10-25 10:35:54
之前也遇到这种问题,如果采用obuil的MFC框架好像不需要设置这两个响应函数,响应VP自定义消息函数也可以,不过设置窗口焦点的时候问题比较麻烦,相关代码放到UPDATE中时结束程序时不能释放,放到VIEW类中的ONDRAW函数时还是会出现其他窗口覆盖失去焦点的问题
morty 评论于2007-10-25 10:53:32
谢谢各位鼎力相助,我将焦点设置写在了OnSetFocus消息响应函数中了,但是开始执行时并没有执行到,一旦切换窗口才执行到,我又在Update添加了,但是结束时不能释放。有高人能指点一下如何在开始时能执行到设置焦点,结束时又能正常的办法吗?
   另外wenxuanwenya能不能详细说说如何设置活动窗口
sustance 评论于2007-11-6 21:23:02
dingdingxiang
henry0henry 评论于2008-10-3 09:54:27
原帖由 zhprain 于 2007-10-25 10:35 AM 发表
之前也遇到这种问题,如果采用obuil的MFC框架好像不需要设置这两个响应函数,响应VP自定义消息函数也可以,不过设置窗口焦点的时候问题比较麻烦,相关代码放到UPDATE中时结束程序时不能释放,放到VIEW类中的ONDRAW函 ...

不能释放,同样的问题,期待得到解决
pplander 评论于2008-10-4 09:20:50
另外一个供参考变相的解决方法:VP失去焦点时,vp窗口键盘确实是接受不到响应,但是能接收到鼠标的响应事件。这时可以在鼠标的响应里面SetFocus(vpWindow);  用这个可以作为以上方法的补充方法
menghewei 评论于2008-10-6 09:16:52
似乎在MFC中的vp程序vp窗口跟MFC窗口是两个无联系窗口
mfc单文档里加如vp显示,好像窗口就被vp独占了,鼠标,键盘只能消息响应在vp的程序里
不知道怎么切换到MFC里响应鼠标的点击事件。。。。。烦恼中

手机版|VR开发网 统计 津ICP备18009691号
网安备12019202000257

GMT+8, 2021-10-29 01:54 AM

返回顶部