解决vs2017在MFC中无CFormView类

  1. 首先在资源视图中添加一个Dialog
    在这里插入图片描述

  2. 将新创建的Dialog的ID改为 IDD_DISPLAYVIEW
    在这里插入图片描述

  3. 双击新建的Dialog,修改Style为Child
    在这里插入图片描述

  4. 在解决方案资源管理器的项目中添加一个类 (选新建项)
    在这里插入图片描述

  5. 添加一个MFC类,名为CDisplayView
    在这里插入图片描述

  6. 基类中无CFormView类,所以直接点确定
    在这里插入图片描述

  7. 替换CDisplayView.h中的全部内容如下 (小提示:Ctrl+A全选文本内容)

#pragma once
#include <afxext.h>
#include "resource.h" 

class CDisplayView : public CFormView
{
	DECLARE_DYNCREATE(CDisplayView)

protected:
	CDisplayView();
public:
	virtual ~CDisplayView();

	enum { IDD = IDD_DISPLAYVIEW };//IDD_DISPLAYVIEW模态窗口的ID

#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

protected:
	virtual void DoDataExchange(CDataExchange* pDX);

protected:
	DECLARE_MESSAGE_MAP()
};
  1. 替换CDisplayView.cpp中的全部内容如下
#include "stdafx.h"
#include "CDisplayView.h"

// CDisplayView
IMPLEMENT_DYNCREATE(CDisplayView, CFormView)
//IDD_DISPLAYVIEW模态框的ID
CDisplayView::CDisplayView() : CFormView(IDD_DISPLAYVIEW) {

}

CDisplayView::~CDisplayView()
{
}

BEGIN_MESSAGE_MAP(CDisplayView, CFormView)
END_MESSAGE_MAP()

#ifdef _DEBUG
void CDisplayView::AssertValid() const
{
	CFormView::AssertValid();
}

#ifndef _WIN32_WCE
void CDisplayView::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}
#endif
#endif //_DEBUG

void CDisplayView::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//  DDX_Text(pDX, IDC_EDIT2, sdf);
}

结束,有帮助的话,希望点个赞!

猜你喜欢

转载自blog.csdn.net/weixin_44611096/article/details/105797723
今日推荐