多文档的问题~~ 能不能实现在MDI窗口中一个MDIChildFrame对应几个不同的Document/View,并能切换啊!? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 同意楼上你怎么会这样想呢,为什么觉得MDIChildFrame对应同一Document/View 在添加文档模板时用同一个MDIChildFrame的继承类的RUNTIME_CLASS就可以了。 MFC确实在默认的情况下是这样的,但是为什么不可以改变呢?但是象MFC提供的例子MFCBind,我对此做扩展,加入CHtmlView,这样就需要在同一个Frame下实现不同的Document/View切换了! 那如何控制view的显示和关闭那,不能在一开始就把所有的view都显示出来啊 wangcn(wangcn) 我需要的就是在开启一个child frame的时候,把和frame绑定的view都创建,再通过切换来show/hide相关的view! 我也正在搞这个问题大概就是:(1)添加三个类view,frame,doc分别对应 ,CView,CMDIChildWnd,CDocument基类(2)在App中添加CMultiDocTemplate* p*Template; p*Template = new CMultiDocTemplate( IDR_*TYPE, RUNTIME_CLASS(C*Doc), RUNTIME_CLASS(C*Frame), // 定制MDI子框架 RUNTIME_CLASS(C*View)); AddDocTemplate(pBounceTemplate);(3)生成部分 POSITION curTemplatePos = GetFirstDocTemplatePosition(); while(curTemplatePos != NULL) { CDocTemplate* curTemplate = GetNextDocTemplate(curTemplatePos); CString str; curTemplate->GetDocString(str, CDocTemplate::docName); if(str == _T("*")) { curTemplate->OpenDocumentFile(NULL); return; } } AfxMessageBox(IDS_NO*TEMPLATE); wdm类型的驱动能否改成NT式的驱动? 求助,图像像素点的坐标 为什么返回值得不到正确的? 服务器端和客户端怎么约定通讯端口号 问个对话框的问题。 我在WindowsSDK下编程时,想加入自己的菜单却发现在工作区中没有资源编辑器,这是怎么回事? ADO 连接Access的连接字符串怎么写?你是怎么知道的? SendMessage问题 (来人都有分)长城宽带上网的问题,想干掉那个计时器IE窗口,并且每次能自动联上,不用天天输入密码 请教IActiveDesktop接口的问题,形势严峻!!!火速解答!!! _bstr_t与BSTR的矛盾? 求一个vc控件返回数组给asp程序的例子
你怎么会这样想呢,为什么觉得MDIChildFrame对应同一
Document/View
但是象MFC提供的例子MFCBind,我对此做扩展,加入CHtmlView,这样就需要在同一个Frame下实现不同的Document/View切换了!
我需要的就是在开启一个child frame的时候,把和frame绑定的view都创建,
再通过切换来show/hide相关的view!
(1)添加三个类view,frame,doc分别对应 ,CView,CMDIChildWnd,CDocument基类
(2)在App中添加CMultiDocTemplate* p*Template;
p*Template = new CMultiDocTemplate(
IDR_*TYPE,
RUNTIME_CLASS(C*Doc),
RUNTIME_CLASS(C*Frame), // 定制MDI子框架
RUNTIME_CLASS(C*View));
AddDocTemplate(pBounceTemplate);
(3)生成部分
POSITION curTemplatePos = GetFirstDocTemplatePosition(); while(curTemplatePos != NULL)
{
CDocTemplate* curTemplate =
GetNextDocTemplate(curTemplatePos);
CString str;
curTemplate->GetDocString(str, CDocTemplate::docName);
if(str == _T("*"))
{
curTemplate->OpenDocumentFile(NULL);
return;
}
}
AfxMessageBox(IDS_NO*TEMPLATE);