我要发帖 回复

中级会员

12

主题

146

积分

0

专家分

:

私信
发表时间 : 2008-6-9 11:49:22 | 浏览 : 1513    评论 : 7
   在MFC中为VP帧循环开了新线程,但VIEW类里的OnSize()函数不能改变VP窗口大小了。编译没错误,就是不能运行。把OnSize()函数里改变VP窗口的代码注销掉后能运行。
   哪位大侠知道开新线程后怎么根据MFC窗口改变VP窗口的大小?

最近VR访客

lbbbbl01410401 评论于2008-6-9 13:09:57
vpWindow *vpWin = *vpWindow::begin();
vpWin->setSize(cx, cy);
用上面这个不可以吗
lbbbbl01410401 评论于2008-6-9 13:14:01
pmyview->vpWin = *vpWindow::begin();
pmyview->vpWin->setParent(pOwner->GetSafeHwnd());
pmyview->vpWin->setBorderEnable(false);
pmyview->vpWin->setFullScreenEnable(true);
这个就可以绑上窗口
obuil 评论于2008-6-9 13:49:56
在 onsize 之前 先要检查 vp线程 是否 已经被配置过
在configrue之后 才能 onsize
haoyou20032003 评论于2008-6-11 10:58:56
原帖由 lbbbbl01410401 于 2008-6-9 01:09 PM 发表
vpWindow *vpWin = *vpWindow::begin();
vpWin->setSize(cx, cy);
用上面这个不可以吗

不开新线程的话可以,开了新线程就不能运行了。
谢谢!
haoyou20032003 评论于2008-6-11 11:00:49
原帖由 lbbbbl01410401 于 2008-6-9 01:14 PM 发表
pmyview->vpWin = *vpWindow::begin();
pmyview->vpWin->setParent(pOwner->GetSafeHwnd());
pmyview->vpWin->setBorderEnable(false);
pmyview->vpWin->setFullScreenEnable(true);
这个就可以绑上窗口

恩,这样只能绑上窗口。但是,改变MFC窗口大小时VP窗口并不跟着改变。
谢谢。
haoyou20032003 评论于2008-6-11 11:02:17
原帖由 obuil 于 2008-6-9 01:49 PM 发表
在 onsize 之前 先要检查 vp线程 是否 已经被配置过
在configrue之后 才能 onsize

谢谢,我先试试,不行的话再来请教。
haoyou20032003 评论于2008-6-11 11:48:02
原帖由 obuil 于 2008-6-9 01:49 PM 发表
在 onsize 之前 先要检查 vp线程 是否 已经被配置过
在configrue之后 才能 onsize

onsize()函数是通过WM_ONSIZE消息调用的,怎么在调用onsize前 检查vp线程 是否 已经被配置过 ?

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

GMT+8, 2021-6-16 05:43 PM

返回顶部