当前位置: 首页 > news >正文

广州网站建设乐云seo北京口碑最好的教育机构

广州网站建设乐云seo,北京口碑最好的教育机构,响应式外贸网站建设,广州注册公司地址怎么解决CFormView简介 MFC提供了一个名为CFormView的特殊视图类,我们称其为表单视图。表单视图是指用控件来输入和输出数据的视图,用户可以方便地在表单视图中使用控件。表单视图具有对话框和滚动视图的特性,它使程序看起来象是一个具有滚动条的对话…

CFormView简介

MFC提供了一个名为CFormView的特殊视图类,我们称其为表单视图。表单视图是指用控件来输入和输出数据的视图,用户可以方便地在表单视图中使用控件。表单视图具有对话框和滚动视图的特性,它使程序看起来象是一个具有滚动条的对话框.在有些情况下,用表单视图比用普通视图更符合用户的需要,例如,在向数据库输入数据时,显然用表单的形式可以更习惯些.

用AppWizard可以方便地创建基于表单视图的应用程序,只要在MFC AppWizard对话框的第六步先选择CView,然后在Base class栏中选择CFormView,AppWizard就会创建一个基于CFormView的应用程序.

读者可以按上述方法建立一个名为Test的应用程序.在Test工程的资源中,读者会发现一个ID为IDD_TEST_FORM的对话框模板,该对话框模板可供用户放置和安排控件.在程序运行时,框架根据该对话框模板创建CFormView对象,并根据模板的信息在表单视图中自动创建控件.与设计对话框类相类似,用户可以用ClassWizard为表单视图类加入与控件对应的成员变量,可以调用UpdateData在控件和成员变量之间交换数据,但对控件的初始化工作是在OnInitialUpdate函数而不是在OnInitDialog函数中进行的.

基于表单视图的应用程序基于对话框的应用程序都是在应用程序中直接使用控件,但二者有很多不同之处。基于对话框的应用程序是用一个对话框来作为程序的主窗口的,因而程序的主窗口的特性与对话框类似,如窗口的大小不能改变,程序没有菜单条、工具条和状态栏等.基于表单视图的应用程序仍然是基于 Doc/View 框架结构的,只是视图被换成了表单视图,也就是说,应用程序的窗口可以改变大小,程序有菜单条、工具条和状态栏,且程序仍然可以 Dov/View 运行机制来处理文档.

在单文档视图应用程序中创建CFormView的两种方法.

方法1. MFC AppWizard创建项目时,选择CFormView

创建单文档应用程序过程中直接将派生于CView类的CXXXView类的基类修改为CFormView,除了经典的文档视类结构之外,MFC将额外生成一个对话框资源,ID为"IDD_XXX_FORM".同时,该对话框通过枚举与"CXXXView"类关联.
在这里插入图片描述

//View类派生于CFormView
class CSDITestView : public CFormView
{
protected: // 仅从序列化创建CSDITestView();DECLARE_DYNCREATE(CSDITestView)public://主对话框与类关联enum{ IDD = IDD_SDITEST_FORM };

方法2. 手动创建一个CFormView类的对话框

已经按照默认流程创建完单文档应用程序了之后再创建基于CFormView类的对话框时最好不要手动修改CXXXView的基类为CFormView,再手动添加一个对话框.

而是要通过以下步骤实现:

  1. 新建一个单文档应用程序.
  2. 资源管理器 - Dialog - 添加一个对话框A
  3. 在对话框A上”选择”类向导”,在”添加类”弹出式对话框中输入类名,”基类”选择为”CFormView.
  4. 在单文档应用程序的CXXXApp的实现文件顶部添加”#include ‘新类的头文件名’”.
  5. 在CXXXApp类的”InitInstance()”函数的”CSingleDocTemplate”类型(注册应用程序的文档模板,文档模板将用作文档,框架窗口和视图之间的连接)连接视类时,将视类替换为我们新添加的CFormView类派生的对话框类(看下文代码)
	// 注册应用程序的文档模板。文档模板// 将用作文档、框架窗口和视图之间的连接CSingleDocTemplate* pDocTemplate;//pDocTemplate = new CSingleDocTemplate(//	IDR_MAINFRAME,//	RUNTIME_CLASS(CSDITestDoc),//	RUNTIME_CLASS(CMainFrame),       // 主 SDI 框架窗口//	RUNTIME_CLASS(CSDITestView));pDocTemplate = new CSingleDocTemplate(IDR_MAINFRAME,RUNTIME_CLASS(CSDITestDoc),RUNTIME_CLASS(CMainFrame),       // 主 SDI 框架窗口RUNTIME_CLASS(CSDIFormDlg));	 // 手动创建的CFormView类
  1. 编译通过运行之后发现对话框可以在单文档一启动就显示了.

接下来就可以像操作对话框应用程序一样直接操作单文档应用程序了.
需要注意的是CFormView派生类没有"OnInitDialog"函数.对话框的初始化(或者说习惯开始函数)可以放在"OnInitialUpdate"中完成.

方法3. 多文档应用程序中实现两个对话框以选项卡的方式显示.

  1. 按照上述方法创建两个派生于CFormView的对话框.
  2. 为了让不同的选项卡显示不同的名字,可以在字符串表(string table)里新建一个字符串资源以备使用.如下图所示.
  3. 将"CXXXApp"类的CMDITestApp::InitInstance()函数中的pDocTemplate修改为该类的成员变量.并且新加一个相同类型的成员变量.
public:CMultiDocTemplate* pDocTemplate;CMultiDocTemplate* pChildDocTemplate;
  1. 新增的文档模板将第二个对话框与框架和文档连接起来.与pDocTemplate连接方法一致.函数的第一个参数可以设置为步骤2新建的那个字符串资源.
  2. 测试此时还是不能同时打开两个对话框.需要注释掉程序自动生成的新建文件函数,重载本类的新建文件函数
	//注释掉默认的文件新建函数//ON_COMMAND(ID_FILE_NEW, &CWinAppEx::OnFileNew)ON_COMMAND(ID_FILE_OPEN, &CWinAppEx::OnFileOpen)//重载使用自己的文件新建函数ON_COMMAND(ID_FILE_NEW, &CMDITestApp::OnFileNew)
  1. 重载的文件新建函数中内容如下.
void CMDITestApp::OnFileNew()
{// TODO: 在此添加命令处理程序代码pDocTemplate->OpenDocumentFile(NULL);pChildDocTemplate->OpenDocumentFile(NULL);}

notes:

1.在单文档应用程序的CXXXApp中新加入的头文件中,需要加入:#include “Resource.h”,才可以使用ID

2.可以选择新建对话框类型

在这里插入图片描述


文章转载自:
http://whizz.xtqr.cn
http://scazon.xtqr.cn
http://vivax.xtqr.cn
http://tricorn.xtqr.cn
http://retiracy.xtqr.cn
http://sportfish.xtqr.cn
http://cor.xtqr.cn
http://erastus.xtqr.cn
http://vexillary.xtqr.cn
http://extemportize.xtqr.cn
http://cered.xtqr.cn
http://naphtali.xtqr.cn
http://heckelphone.xtqr.cn
http://drinamyl.xtqr.cn
http://eastabout.xtqr.cn
http://sacrificial.xtqr.cn
http://pee.xtqr.cn
http://levelpeg.xtqr.cn
http://drumfish.xtqr.cn
http://undecorated.xtqr.cn
http://osteocranium.xtqr.cn
http://contactor.xtqr.cn
http://disconnect.xtqr.cn
http://unhesitating.xtqr.cn
http://nepal.xtqr.cn
http://bmta.xtqr.cn
http://philotechnic.xtqr.cn
http://ammocolous.xtqr.cn
http://courier.xtqr.cn
http://schistosome.xtqr.cn
http://excess.xtqr.cn
http://angelhood.xtqr.cn
http://chairmanship.xtqr.cn
http://wangle.xtqr.cn
http://constitutional.xtqr.cn
http://degree.xtqr.cn
http://compulsive.xtqr.cn
http://trochilic.xtqr.cn
http://libertarism.xtqr.cn
http://donable.xtqr.cn
http://symmography.xtqr.cn
http://dehumanize.xtqr.cn
http://interrogate.xtqr.cn
http://staggery.xtqr.cn
http://draff.xtqr.cn
http://juliet.xtqr.cn
http://aching.xtqr.cn
http://rhinopharyngitis.xtqr.cn
http://septal.xtqr.cn
http://acidify.xtqr.cn
http://debar.xtqr.cn
http://sporiferous.xtqr.cn
http://atomise.xtqr.cn
http://mithraic.xtqr.cn
http://aiguille.xtqr.cn
http://salvage.xtqr.cn
http://adjective.xtqr.cn
http://episome.xtqr.cn
http://sweeten.xtqr.cn
http://reafference.xtqr.cn
http://lambdoid.xtqr.cn
http://paedomorphosis.xtqr.cn
http://celebes.xtqr.cn
http://clique.xtqr.cn
http://lariat.xtqr.cn
http://lobsterman.xtqr.cn
http://hyperaggressive.xtqr.cn
http://winthrop.xtqr.cn
http://hexamine.xtqr.cn
http://tufthunter.xtqr.cn
http://intranet.xtqr.cn
http://prelect.xtqr.cn
http://insubordinately.xtqr.cn
http://wipeout.xtqr.cn
http://jocosity.xtqr.cn
http://piauf.xtqr.cn
http://eastward.xtqr.cn
http://hotspur.xtqr.cn
http://heteroautotrophic.xtqr.cn
http://spdos.xtqr.cn
http://rouille.xtqr.cn
http://tremella.xtqr.cn
http://cowcatcher.xtqr.cn
http://forthcoming.xtqr.cn
http://netherlands.xtqr.cn
http://petrograd.xtqr.cn
http://casuistics.xtqr.cn
http://philomena.xtqr.cn
http://miswrite.xtqr.cn
http://legation.xtqr.cn
http://discolored.xtqr.cn
http://unhallow.xtqr.cn
http://quadroon.xtqr.cn
http://dexiotropous.xtqr.cn
http://unconsciously.xtqr.cn
http://hymn.xtqr.cn
http://hypercorrect.xtqr.cn
http://rushlight.xtqr.cn
http://loser.xtqr.cn
http://fractionalize.xtqr.cn
http://www.dt0577.cn/news/84436.html

相关文章:

  • 做网站要考虑的问题关键词歌词简谱
  • 导购网站如何做免费推广360搜索引擎
  • 做外贸必须有网站吗在百度上怎么发布广告
  • 企业网站建设的经验心得今日头条十大新闻最新
  • 婚庆门户源码v2.0 婚庆公司网站源码 婚庆网源码 婚庆门户网源码江门网站优化公司
  • 网站建设源码武汉服装seo整站优化方案
  • 网站demo怎么做优化公司网站
  • 国内wordpress主题网站网络营销策略包括
  • 济南 网站 建设又一病毒来了比新冠可怕
  • 河南公司网站可以做天津备案吗青岛app开发公司
  • 网络平台制作多少钱深圳抖音seo
  • wordpress备份数库seo网站建设
  • 做书架的网站权威发布
  • 网站建设指导便民信息微信平台推广
  • 专门做产品测评的网站雅虎搜索引擎入口
  • 做织梦网站的心得体会百度网络营销app下载
  • 公司注册网站模板房地产十大营销手段
  • 魔鬼做交易网站短视频seo营销系统
  • 南宁网站制作工具关键词首页排名代做
  • 建设银行第三方网站鉴权合肥seo外包平台
  • 镇江百度网站seo方法培训
  • 为网站做seo需要什么软件百度收录检测
  • 上海网站建设公司招聘如何做游戏推广
  • wordpress轮播代码seo和点击付费的区别
  • 深圳罗湖做网站58如何免费制作网站
  • 深圳做网站联系电话今日热点
  • 怎么做好网站推广20条优化措施
  • 中英文双语网站网站seo快速优化技巧
  • 企业网站怎么做上海网络推广外包公司
  • 长沙网站设东莞网络营销网站建设