首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

vc多文档多视图解决思路

2012-06-03 
vc多文档多视图我想打开一幅图像然后同时显示在两个视图中,只是两个图像的大小不同而已,该怎么实现呢?能给

vc多文档多视图
我想打开一幅图像然后同时显示在两个视图中,只是两个图像的大小不同而已,该怎么实现呢?能给个思路吗?应该在哪里添加语句创建一个新的view呢?

[解决办法]
mainframe的WM_CREATE消息里就可以
MSDN上有个例子...
[解决办法]
在创建视图菜单的消息响应函数中添加如下代码

//创建新的文档模板

static CMultiDocTemplate* pDocTemplate_New;
BOOL bChildCreated=FALSE;

// 标 志, 新 窗 口 是 否 建 立; 如 已 建, 将 不 重 建
if(bChildCreated==FALSE)
{
pDocTemplate_New = new CMultiDocTemplate(
IDR_CMONTYPE,
RUNTIME_CLASS(C**Doc),
RUNTIME_CLASS(CChildFrame),// custom MDI child frame
RUNTIME_CLASS(C**View));
AfxGetApp()->AddDocTemplate(pDocTemplate_New);
// 创 建 新 的 子 窗 口 
CMDIChildWnd* pMDIActive = MDIGetActive();//获得当前活动子窗口的指针

// 获得文档指针
C**Doc* pDoc=(C**Doc*)pMDIActive->GetActiveDocument();

// 建立新的框架窗口
CMDIChildWnd* pNewFrame=(CMDIChildWnd*)(pDocTemplate_New ->CreateNewFrame(pDoc, NULL));

if(pNewFrame==NULL)
{
AfxMessageBox("新窗口不能建立");
return;

}

//显示窗口
pDocTemplate_New->InitialUpdateFrame(pNewFrame,pDoc);

bChildCreated=TRUE; 
}

[解决办法]
每个文档应该对应多个视图,可以使用视图分割!
网上搜索一下视图分割!多个view对应一个doc

热点排行