多文件编辑如何建立

liuyan20050516 2009-08-04 07:44:25
用VC/MFC如何建立画图与文本编辑器共存的应用程序
...全文
21 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyan20050516 2009-08-05
谢谢各位的帮忙
回复
副组长 2009-08-05
可以用多Doc,但解决这个问题的方案最好是一个文档对应多视。一个Doc类多个View类。
如果希望图和文字在一屏上显示,可以用分裂窗口。分裂窗两个窗口,一个用于显示图,一个用于显示文本。一个Doc类,对应2个View类。可以用CSplitterWnd 类实现。

不喜欢分裂窗也可以使用单独的窗口来实现。比方增加一个浮动窗口。
回复
liuyan20050516 2009-08-05
class MyApp:public CWinApp
{
BOOL InitInstance()
{

CMultiDocTemplate* aDocTemplate;
aDocTemplate=new CMultiDocTemplate(IDR_ChildFrame,
               RUNTIME_CLASS(MyDocument),
                 RUNTIME_CLASS(MyMDIChild),
                   RUNTIME_CLASS(MyView));
AddDocTemplate(aDocTemplate);

CMultiDocTemplate* textTemplate;
textTemplate=new CMultiDocTemplate(IDR_TextWnd,
               RUNTIME_CLASS(TextDoc),
             RUNTIME_CLASS(MyMDIChild),
                RUNTIME_CLASS(TextView));
AddDocTemplate(textTemplate);
/////////////////////////////////////////////////////////////////////////////////////////
//
MyFrame* Frame=new MyFrame;
m_pMainWnd=Frame;

Frame->LoadFrame(IDR_MyFrame);
// aDocTemplate->InitialUpdateFrame(Frame,aDOC);
Frame->ShowWindow(SW_SHOW);

LoadStdProfileSettings();
Frame->DragAcceptFiles();
EnableShellOpen();

RegisterShellFileTypes();

if(m_lpCmdLine[0]=='\0')
OnFileNew();
else
OpenDocumentFile(m_lpCmdLine);

return true;

}
DECLARE_MESSAGE_MAP()
}a_app;
BEGIN_MESSAGE_MAP(MyApp,CWinApp)
ON_COMMAND(ID_FILE_NEW,CWinApp::OnFileNew)
ON_COMMAND(ID_FILE_OPEN,CWinApp::OnFileOpen)
END_MESSAGE_MAP()
回复
liuyan20050516 2009-08-05
二楼说的是那么一回事,我也知道是这样,可是实施起来就不行了.能不能有一个详细的解决办法呢
回复
rayw0ng 2009-08-04
选中Multiple Documents(多文档)就行了,使用Document/View(文档/视)结构,一个画图,一个文本编辑。
回复
雪影 2009-08-04
使用一个画图组件和文件编辑组件就行了。
文本编辑组件可以使用ms word中的组件
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告
暂无公告