首先建立MFC AppWizard(exe),取名字为SplitterWnd,下一步,选择单文档“Single document”,其他默认,点击“完成”。
点击ResourceView,在Dialog下插入一个Dialog,ID为“IDD_FORMVIEW1"右击对话框->属性->Styles标签:左边设置Style为Child 和Border为None 右击ClassView,添加1个类,名字叫FormView1,ClassStyle为CFormView,类名为CChildView,
base类选择CFormView,Dialog ID选择“IDD_FORMVIEW1".. 编译,运行,就弹出下面这个对话框...点了确定以后才执行程序....
|--------------------|
|新建 确定 |
|ChildView 取消 |
|CMFCView |
|--------------------| 怎样不要这个东西啊.....
点击ResourceView,在Dialog下插入一个Dialog,ID为“IDD_FORMVIEW1"右击对话框->属性->Styles标签:左边设置Style为Child 和Border为None 右击ClassView,添加1个类,名字叫FormView1,ClassStyle为CFormView,类名为CChildView,
base类选择CFormView,Dialog ID选择“IDD_FORMVIEW1".. 编译,运行,就弹出下面这个对话框...点了确定以后才执行程序....
|--------------------|
|新建 确定 |
|ChildView 取消 |
|CMFCView |
|--------------------| 怎样不要这个东西啊.....
BOOL CXxxxApp::InitInstance()
{
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CXxxxDoc),
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CChildView));
AddDocTemplate(pDocTemplate);}
我照您的样子改并没有效果,,还是出现那个对话框..
然后我自己试了一下..发现把下面叹号包起来那两段,注释掉其中一段就不会弹那个对话框了...
这是为什么....注释了之后会出什么问题么...
谢谢了..
BOOL CSplitterWndApp::InitInstance()
{
!!!!! { // BLOCK: doc template registration
// Register the document template. Document templates serve
// as the connection between documents, frame windows and views.
// Attach this form to another document or frame window by changing
// the document or frame class in the constructor below.
CSingleDocTemplate* pNewDocTemplate = new CSingleDocTemplate(
IDR_CHILDVIEW_TMPL,
RUNTIME_CLASS(CSplitterWndDoc), // document class
RUNTIME_CLASS(CMainFrame), // frame class
RUNTIME_CLASS(CChildView)); // view class
AddDocTemplate(pNewDocTemplate);
!!!!! } AfxEnableControlContainer(); // Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif // Change the registry key under which our settings are stored.
// TODO: You should modify this string to be something appropriate
// such as the name of your company or organization.
SetRegistryKey(_T("Local AppWizard-Generated Applications")); LoadStdProfileSettings(); // Load standard INI file options (including MRU) // Register the application's document templates. Document templates
// serve as the connection between documents, frame windows and views.!!! CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CSplitterWndDoc),
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CSplitterWndView));
!!! AddDocTemplate(pDocTemplate); // Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo); // Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdInfo))
return FALSE; // The one and only window has been initialized, so show and update it.
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow(); return TRUE;
}