VC6.0中固定子窗口在对话框中显示位置
我在做一个多摄像头监控的程序,主窗口是一个基本对话框,3个监控的子窗口(也是对话框)需要像墙上安装的玻璃一样按照2*2的方式排列在主对话框中(其中右下角的那个做为打开硬盘...
我在做一个多摄像头监控的程序,主窗口是一个基本对话框,3个监控的子窗口(也是对话框)需要像墙上安装的玻璃一样按照2*2的方式排列在主对话框中(其中右下角的那个做为打开硬盘上视频文件的回放窗口)。请问怎样才能实现这个功能。
我现在只是在主对话框中能打开一个子对话框窗口,但不能让它按照我想要的位置和大小进行排列。
用了下面的程序
RECT rc;
GetParent()->GetClientWindow(&rc);
MoveWindow(0,0,rc.right/2,rc.bottom/2);//将窗口移向左上角
错误提示:
D:\项目\测试\openfile\MyOutput.cpp(56) : error C2039: 'GetClientWindow' : is not a member of 'CWnd'
c:\program files\microsoft visual studio\vc98\mfc\include\afxwin.h(1899) : see declaration of 'CWnd'
执行 cl.exe 时出错. 展开
我现在只是在主对话框中能打开一个子对话框窗口,但不能让它按照我想要的位置和大小进行排列。
用了下面的程序
RECT rc;
GetParent()->GetClientWindow(&rc);
MoveWindow(0,0,rc.right/2,rc.bottom/2);//将窗口移向左上角
错误提示:
D:\项目\测试\openfile\MyOutput.cpp(56) : error C2039: 'GetClientWindow' : is not a member of 'CWnd'
c:\program files\microsoft visual studio\vc98\mfc\include\afxwin.h(1899) : see declaration of 'CWnd'
执行 cl.exe 时出错. 展开
3个回答
展开全部
提几个思路:1.把子窗口设成CHILD(为了让主窗口移动时子窗口能跟着主窗口一起动,如果你的界面是全屏显示的那就无所谓了,但在子窗口定位编程时会小有区别),在每个子窗口的OnInitDialog里面加上
RECT rc;
GetParent()->GetClientRect(&rc);//手误了,怪我没查MSDN就直接打上来了
MoveWindow(0,0,rc.right/2,rc.bottom/2);//将窗口移向左上角
//MoveWindow(0,rc.bottom/2,rc.right/2,rc.bottom/2);//将窗口移向左下角。
//MoveWindow(rc.right/2,0,rc.right/2,rc.bottom/2);//将窗口移向右上角。
//MoveWindow(rc.right/2,rc.bottom/2,rc.right/2,rc.bottom/2);//将窗口移向右下角。
有可能还要加上主窗口的位置移置,用GetParent()->GegWindowRect(&rc);得到 就行了,自己摸索一下吧。
2.直接用一个跟主窗体客户区一样大的子窗体,在上面不同的位置输出不同的图像,也省得一个一个的移了
以上观点仅供参考。
RECT rc;
GetParent()->GetClientRect(&rc);//手误了,怪我没查MSDN就直接打上来了
MoveWindow(0,0,rc.right/2,rc.bottom/2);//将窗口移向左上角
//MoveWindow(0,rc.bottom/2,rc.right/2,rc.bottom/2);//将窗口移向左下角。
//MoveWindow(rc.right/2,0,rc.right/2,rc.bottom/2);//将窗口移向右上角。
//MoveWindow(rc.right/2,rc.bottom/2,rc.right/2,rc.bottom/2);//将窗口移向右下角。
有可能还要加上主窗口的位置移置,用GetParent()->GegWindowRect(&rc);得到 就行了,自己摸索一下吧。
2.直接用一个跟主窗体客户区一样大的子窗体,在上面不同的位置输出不同的图像,也省得一个一个的移了
以上观点仅供参考。
展开全部
RECT rc;
GetParent()->GetClientRect(&rc);
MoveWindow(0,0,rc.right/2,rc.bottom/2);//将窗口移向左上角
GetParent()->GetClientRect(&rc);
MoveWindow(0,0,rc.right/2,rc.bottom/2);//将窗口移向左上角
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
GetClientWindow,当然没有了,应该是GetClientRect或者GetWindowRect
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询