如何在一个多文档多视图的程序中,在一个视图中通过按钮打开另一个视图呢??

志汉天涯 2012-12-04 02:52:03
如何在一个多文档多视图的程序,通过一个视图上的按钮打开另一个视图啊?还有如何在这两个视图之间传送数据啊???求助!~!~
...全文
249 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
HuWenjin 2013-01-06
  • 打赏
  • 举报
回复
引用 8 楼 liuzhihan209 的回复:
引用 7 楼 Saimen 的回复:引用 6 楼 liuzhihan209 的回复: 引用 5 楼 Saimen 的回复:点按钮->发送消息到MainFrame->获取MDIFrame句柄->查询当前全部子ChildFrame下的ChildView->找到自己需要的View->找到它的Frame->激活. 嗯,的确不错呀,有没有部分代码什么的,谢谢啊~~~ 这代……
好多代码,不知道如何帮
志汉天涯 2012-12-13
  • 打赏
  • 举报
回复
引用 7 楼 Saimen 的回复:
引用 6 楼 liuzhihan209 的回复: 引用 5 楼 Saimen 的回复:点按钮->发送消息到MainFrame->获取MDIFrame句柄->查询当前全部子ChildFrame下的ChildView->找到自己需要的View->找到它的Frame->激活. 嗯,的确不错呀,有没有部分代码什么的,谢谢啊~~~ 这代码一贴就几大块,还是自己一步步写吧,都是这么走过来的
帮下忙了,谢谢啊~~~~
HuWenjin 2012-12-10
  • 打赏
  • 举报
回复
引用 6 楼 liuzhihan209 的回复:
引用 5 楼 Saimen 的回复:点按钮->发送消息到MainFrame->获取MDIFrame句柄->查询当前全部子ChildFrame下的ChildView->找到自己需要的View->找到它的Frame->激活. 嗯,的确不错呀,有没有部分代码什么的,谢谢啊~~~
这代码一贴就几大块,还是自己一步步写吧,都是这么走过来的
志汉天涯 2012-12-07
  • 打赏
  • 举报
回复
引用 5 楼 Saimen 的回复:
点按钮->发送消息到MainFrame->获取MDIFrame句柄->查询当前全部子ChildFrame下的ChildView->找到自己需要的View->找到它的Frame->激活.
嗯,的确不错呀,有没有部分代码什么的,谢谢啊~~~
HuWenjin 2012-12-07
  • 打赏
  • 举报
回复
点按钮->发送消息到MainFrame->获取MDIFrame句柄->查询当前全部子ChildFrame下的ChildView->找到自己需要的View->找到它的Frame->激活.
志汉天涯 2012-12-07
  • 打赏
  • 举报
回复
引用 2 楼 ghj123h 的回复:
调用一下CWinApp::OnFileNew()试试(忘了是CWinApp还是CView了)
可以在仔细想想吗??谢谢你啊~~~对我急用啊~~
志汉天涯 2012-12-07
  • 打赏
  • 举报
回复
引用 1 楼 tiger9991 的回复:
2个步骤,代码如下 C/C++ code ? 12345678910111213141516 //1.首先保证自己需要加载的视图,文档和View都存在 pAnalyseDocTemplate= new CMultiDocTemplate(IDR_MAINFRAME, RUNTIME_CLASS(CXXXXDoc), RUNTIME_C……
你的这些我都知道,首先还是谢谢你的帮助,但是你的这段代码,不是我需要的,我需要的是在一个视图中打开另一个视图,视图中的按钮啊,关键问题是在视图View中,而不是在MainFrame中啊~~~这个才是最难的,你的代码首先提示的是pAnalyseDocTemplate就未定义啊。~~
正在无聊中 2012-12-04
  • 打赏
  • 举报
回复
调用一下CWinApp::OnFileNew()试试(忘了是CWinApp还是CView了)
傻X 2012-12-04
  • 打赏
  • 举报
回复
2个步骤,代码如下

//1.首先保证自己需要加载的视图,文档和View都存在
pAnalyseDocTemplate= new CMultiDocTemplate(IDR_MAINFRAME,
		RUNTIME_CLASS(CXXXXDoc),
		RUNTIME_CLASS(CChildFrame), // custom MDI child frame
		RUNTIME_CLASS(CXXXXView));
	if (!pAnalyseDocTemplate)
		return FALSE;

//2.打开视图

	CDocument * pAnalyseCurveDoc = (CDocument *)pAnalyseDocTemplate->CreateNewDocument();
	pAnalyseCurveDoc->SetTitle("Analyse Curve");
	CMDIChildWnd * pActiveChild = MDIGetActive();
	CFrameWnd * pFrame = pAnalyseDocTemplate->CreateNewFrame(pAnalyseCurveDoc,pActiveChild);
	pAnalyseDocTemplate->InitialUpdateFrame(pFrame,pAnalyseCurveDoc);

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧