荣耀8屏幕碎了只换外屏6外屏碎了多少米

求助,MFC对话框程序通过按钮弹出子对话框,如何初始化子对话框【c++吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:286,899贴子:
求助,MFC对话框程序通过按钮弹出子对话框,如何初始化子对话框收藏
点击按钮,用dlg.DoModal()弹出子对话框,在子对话框中有CListControl控件,无法对其进行初始化。子对话类中已经添加了OnInitDialog()方法,感觉没有执行这个方法,求解。点击按钮事件代码:void CMFCPaikeDlg::OnBnClickedOk(){// TODO:
在此添加控件通知处理程序代码CDialogEx::OnOK();CDialog dlg(IDD_DIALOGCLASS);dlg.DoModal();}子窗口类中的OnInitDialog()代码:BOOL ClassEidt::OnInitDialog(){CDialogEx::OnInitDialog();classCListctr.InsertColumn(0, _T(&id&), LVCFMT_CENTER);classCListctr.InsertColumn(0, _T(&name&), LVCFMT_CENTER);return TRUE;
// return TRUE unless you set the focus to a control// 异常:
OCX 属性页应返回 FALSE}
登录百度帐号推荐应用博客访问: 3915033
博文数量: 1023
博客积分: 19333
博客等级: 上将
技术积分: 11189
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: C/C++
在对话框中添加了一个richedit控件,对话框就不显示了
郁闷,我试图弹出一个对话框,步骤如下:1.建立了一个对话框资源的模板2.双击模板建立对应的类3.包含头文件4,弹出对话框,代码如下:CAddTypeDdlg.DoModal();但是,却无法弹出对话框?其他的对话框都可以,但就是这个对话框弹不出来,是vc的毛病?还是其他什么呢?
后来才发现,是添加了richEdit的问题,去掉就行了,但是不是解决方法,于是网上搜了一下,还真有:参考如下资料:
这个问题是同事遇到的,比较有趣的现象:就是他有一个MFC的对话框应用程序,添加了一个RichEdit控件后就不能正常显示了,现象就是点生成的可执行程序,没有反应。我上网查阅了下,网上的说法是程序还没有准备好RichEdit的编辑,就是还没有为这个控件做好准备,解决办法是手动添加做准备语句,在应用程序类的InitInstance函数体内添加以下语句: &&&&&&& AfxInitRichEdit(): 这样就好了,真是奇怪。
最后看到了MS的解释,属于官方的东西,比较正式,帖在这里。&
&&& If you are using a rich edit control in a dialog box (regardless whether your application is SDI, MDI, or dialog-based), you must call AfxInitRichEdit once before the dialog box is displayed. A typical place to call this function is in your program’s InitInstance member function. You do not need to call it for each time you display the dialog box, only the first time. You do not have to call AfxInitRichEdit if you are working with CRichEditView.
&&&& 不过到底是为什么会这样,还是不明白,也不知道MFC内部是如何处理的,不过知道怎么做就是了。
在CxxxApp::InitInstance()中添加代码&& & AfxInitRichEdit();&& 在app的InitInstance中加入AfxRichEditInit()初始化richedit空间
初始化通用控件即可,InitCommonControl***或InitCommonControls皆可
阅读(6637) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。MFC类的组织结构及主要的类简介 - gongzhitank的博客 - CSDN博客
MFC类的组织结构及主要的类简介
Opencv2.4.8+VS2010
8.2.1&MFC类的组织结构
&&&&目前的MFC版本中包含了100多个类,不同的类实现不同的功能,类之间既有区别又有联系。MFC同时还是一个应用程序框架,它帮助定义应用程序的结构以及为应用程序处理许多杂务,事实上,MFC封装了一个程序操作的每一个方面。在MFC程序中,程序员很少需要直接调用Windows&API函数,而是通过定义MFC类的对象并通过调用对象成员函数来实现相应的功能。
&&&&MFC类库中类是以层次结构的方式组织起来的,几乎每个子层次结构都于一具体的Windows实体相对应,一些主要的接口类管理了难以掌握的Windows接口。这些接口包括:窗口类、GDI类、对象连接和嵌入类(OLE)、文件类、对象I/O类、异常处理类、集合类等。
&&&&MFC库中的类之间按层次关系划分可分为如下若干类:
根类:Cobject
应用程序体系结构类
&&&&&&&&应用程序和线程支持类
&&&&&&&&命令相关类
&&&&&&&&文档类
&&&&&&&&视类(体系结构)
&&&&&&&&框架窗口(体系结构)
&&&&&&&&文档模板类
窗口、对话框和控件类
&&&&&&&&框架窗口类(窗口)
&&&&&&&&视类(窗口)
&&&&&&&&对话框类
&&&&&&&&控件类
&&&&&&&&控件条类
绘图和打印类
&&&&&&&&输出(设备相关类)
&&&&&&&&&&&&绘图工具类
简单数据类型类
数组、列表和映射类
&&&&&&&&&数组类
&&&&&&&&&列表类
&&&&&&&&&映射类
文件和数据库类
&&&&&&&&&文件I/O类
&&&&&&&&&DAO类
&&&&&&&&&ODBC类
Internet和网络工作类
&&&&&&&&&ISAPI类
&&&&&&&&&Windows&Socket类
&&&&&&&&&Win32&Internet类
&&&&&&&&&OLE容器类
&&&&&&&&&OLE服务器类
&&&&&&&&&OLE拖放和数据传输类
&&&&&&&&&OLE普通对话框类&&&&&&
&&&&&&&&&OLE控件类
&&&&&&&&&OLE动画类
&&&&&&&&&活动文档类
&&&&&&&&&其他文档类
&&&&(10)
调试和异常类&
&&&&&&&&&调试支持类
&&&&&&&&&异常类
&&&下面简单介绍一下MFC中一些主要的类和某些子层次结构。
8.2.2&根类
&&&&Cobject类是MFC的抽象基类,是MFC中多数类和用户自定义子类的根类,它为程序员提供了许多编程所需的公共操作。这些操作包括:对象的建立和删除、窜行化支持、对象诊断输出、运行使信息以及合类的兼容等。
&&&&窜行化是对象本身往返于存储介质过程。窜行化的结果是使数据“固定”在介质上。Cobject类定义两个在窜行化操作中起重要作用的成员函数:Serialize和IsSeializable。程序可以调用一个由Cobject派生的对象的IsSeializable函数来确定该对象是否支持窜行化操作。建立一个支持窜行化的类的步骤之一是重载继承自Cobject类的Serialize函数,并提供窜行化数据成员的派生的专用代码。
&&&&Cobject的派生类同时还支持运行时类型信息。运行时类型信息机制允许程序检索对象的类名及其他信息。Cobject提供两个成员函数来支持运行时的类型信息;IsKindOf和GetRuntineClass。函数IsKindOf指示一个对象是属于规定的类或者是从规定的类中派生出来的。CRuntimeClass类对象中包含了一个类的运行时信息,包括这个类的类名,基类名等信息。通过它可以很容易获得一个指定的运行时刻信息。
8.2.3 应用程序体系结构类
&&&&该类用于构造应用程序框架的结构,它能提供多数应用程序公用的功能。编写程序的任务是填充框架,添加应用程序专用的功能。应用程序体系结构类主要有与命令相关的类,窗口应用程序类,文档/视图和线程基类等。
&&&&CWinApp表示应用程序本身,几乎所有的基于MFC的应用程序都是从它派生一个类,并通过创建这个派生类的对象来创建一个应用程序对象。CWinApp类继承关系如图8-1所示。
1. 命令相关类:CCmdTarget类
&&&&该类是Cobject的子类,它是MFC库中所有具有消息映射属性的基类。消息映射规定了当一个对象接收到消息命令时,应调用哪一个函数对该消息进行处理。程序员很少需要从CCmdTarget类中派生出新类如窗口类(CWnd),应用程序类(CWinApp),视图类(Cview)及框架窗口类(VFrameWnd)等。
2. 线程基类:CWinThread类
&&&&所有线程的基类直接使用。它封装操作系统的线程化功能。CWinTread对象表示一个执行的线程,成员函数如CreateThread,SetThreadPriority和SuspendThread提供MFC程序用来创建和操作线程的工具。CWinApp类就是从CWinThread类中派生的。
3. 窗口应用程序类:CWinApp类
&&&&每个应用程序有且只有一个应用程序对象,在运行程序中对象与其他对象相互协调,该对象从CWinApp类中派生。CWinApp类封装了初始化,运行,终止应用程序的代码。
&&&&CWinApp类中包含了若干个共有的数据成员,部分数据成员如表8-1所示。
&&&&&&&&&&&&&&&&&&&&&&&&表8-1&CWinApp类中定义的部分数据成员
&&&&&数据成员&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&功能描述
&&m_pszAppName&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&保存应用程序的名称
&&m_hInstance&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&标识当前的应用程序实例
&&m_lpCmdLine&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&指向应用程序的命令行参数的指针
&&m_nCmdShow&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&指定窗口初始化的风格
&&m_bHelpMode&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&指定在用户按下Shift+F1键时是否作出相应的帮助响应
&&m_pActiveWnd&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&指向容器应用程序主窗口的指针
&&m_pszExeName&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&应用程序可指向文件模块的名称
&&m_pszHelpFilePath&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&应用程序的帮助文件的路径
&&m_pszProfileName&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&应用程序初始化(.ini)文件名
&&m_pszRegistryKey&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&决定应用程序的初始化文件的存放地点
&&&&CWinApp类中包含了若干公有的成员函数,部分如表8-2所示
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&表8-2&CWinApp类中的公有成员函数
&&&&&&&&&&&&&&&&函数名&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&功能描述
&&&&&&&&CWinApp&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&构造应用程序对象
&&&&&&&&LoadCursor&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&向应用程序中加载光标资源
&&&&&&&&LoadStandardCursor&&&&&&&&&&&&&&&&&&&&&&&&&向应用程序中加载系统默认的光标资源
&&&&&&&&LoadIcon&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&向应用程序中加载图标资源
&&&&&&&&LoadStandardIcon&&&&&&&&&&&&&&&&&&&&&&&&&&&向应用程序中加载系统默的图标资源
&&&&&&&&ParseCommandLine&&&&&&&&&&&&&&&&&&&&&&&&&&&对命令行中的参数和标志进行分析
&&&&&&&&ProcessShellCommand&&&&&&&&&&&&&&&&&&&&&&&&处理命令行中的参数和标志
&&&&&&&&GetProfileInt&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&从程序的ini文件中获取一个整数值
&&&&&&&&WriteProfileInt&&&&&&&&&&&&&&&&&&&&&&&&&&&&向程序的ini文件中写入一个整数值
&&&&&&&&GetProfileString&&&&&&&&&&&&&&&&&&&&&&&&&&&从程序的ini文件中获取一个字符值
&&&&&&&&WriteProfileString&&&&&&&&&&&&&&&&&&&&&&&&&向程序的ini文件中写入一个字符值
&&&&&&&&AddDocTemplate&&&&&&&&&&&&&&&&&&&&&&&&&&&&&向应用程序的文档模板列表中加入一个文档模板
&&&&&&&&GetFirstDocTemplatePosition&&&&&&&&&&&&&&&&获取文档模板列表中第一个文档模板的位置
&&&&&&&&OpenDocumentFile&&&&&&&&&&&&&&&&&&&&&&&&&&&打开一个文档对象
&&&&&&&&InitInstance&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&执行程序的初始化操作
&&&&&&&&Run&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&启动默认的消息循环
&&&&&&&&OnIdle&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&应用程序闲置时的出来程序
&&&&&&&&ExitInstance&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&结束应用程序的操作
&&&&&&&&CloseAllDocument&&&&&&&&&&&&&&&&&&&&&&&&&&&关闭所有打开的文档对象
&&&&&&&&SaveAllModifiled&&&&&&&&&&&&&&&&&&&&&&&&&&&提示保存修改过的文档对象
&&&&&&&&SetDialogBkColor
&&&&&&&&&&&&&&&&&&&&&&&&&设置对话框的默认背景色
&&&&&&CWinApp中定义的部分函数功能又是也可以通过MFC提供的全局函数来实现,这些全局函数一般都以Afx为前缀。
4. 文档/视图类
&&&&文档对象由文档模板对象创建,管理应用程序的数据。Cdocument支持标准的文档操作,这些操作包括文档的创建,下载保存。一个应用程序可以操作多个文档类型,每一个文档类型都有特定的文档模板。文档模板指定了该文档所需的资源,而且每一个文档对象包含一个指向起相联的文档模板的指针。这些模板及类由:
&&&&CDocTemplate:文档模板基类。文档模板是协调文档,视图和框架窗口的创建。
&&&&CSingleDocTemplate:单文档界面的文档模板。
&&&&CMultiDocTemplate:多文档界面的文档模板。
&&&&Cdocument:应用程序专用文档的基类。
&&&&Cview:显示文档模板数据的应用程序专有的视图基类。
&&&&Cdocument类诶用户自定义的文档类提供了基本的功能支持,它在MF从中的层次关系如图8-2表示。用户通常用File&Open命令打开一个文档,用File&Save命令来保存文档,基于这些文档的共性,MFC提供了一个Cdocment类来对此进行封装。
&&&&用户通过和文档相关联的视图对象与文档进行交。一个视图显示文档中的信息,并把用户在框架窗口的操作转换成对文档操作的相应命令。文档模板指定了视图的类型和显示每种文档的对于窗口。
&&&&视图类为用户自定义视图提供了最基本功能的支持。一个视图充当了沟通用户和文档的中间桥梁的作用。
在MFC类库中一部分是从Cview类派生出来的,如表8-4所示。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&表8-4&&Cview的派生类
&&&&&&&&&&&&&&&派生类名&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&功能简介
&&&&&&&&&&&&&Cscrollew
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&带有滚动条的视图
&&&&&&&&&&&&&CCtrlView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&带有树状,列表框等控件的视图
&&&&&&&&&&&&&CDaoRecordView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&在一个对话框中显示数据库记录的视图
&&&&&&&&&&&&&CEditView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&一个通过多行文本编辑器的视图
&&&&&&&&&&&&&CListView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&带有列表框控件的视图
&&&&&&&&&&&&&CRecordView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&在一个对话框中显示数据库的视图
&&&&&&&&&&&&&CRichEditView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&一个具有格式文件编辑功能的编辑控件的视图
&&&&&&&&&&&&&CTreeView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&一个具有树状控件的视图
&&&&&&&&&&&&&CPreviewView&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&支持打印预览
&&&&当一个文档中数据被修改时,每一个与此文档相关联的视图都必须反映出来所作的更改。Cdocument类提供了一个UpdateAllView成员函数来修改所有和文档有关的视图。当应用程序中使用该类时,必须实现一下步骤:
从Cdocument为每一种文档类型派生一个子类
添加成员变量一储存文档数据
实现对文档数据进行读写,修改的成员函数
在用户种定义的文档中重载Cobject::Serialize成员函数以实现从磁盘上对文档数据的读写。
8.2.4 可视对象类
1.&窗口类:CWnd类
&&&&该类提供了MFC中所有窗口类的基本功能。CWnd类和消息映射机制隐藏了窗口函数WndProc。一个Windows消息通过消息映射发送到相应的CWnd类OnMessage成员函数。程序员可以重载OnMessage成员函数以对特定分消息进行处理。CWnd类是CCmdTarget类的子类,创建Windows窗口要分两步走:首先引入构造函数,构造一个CWnd对象,然后调用Create建立Windows窗口并将它连到CWnd对象上。MFC中还从CWnd类派生出了进一步的窗口类型以完成更具体的窗口创建工作,这些派生类有:
&&&&&&&&&CFrameWnd:框架窗口类,SDI应用程序主要框架窗口的基类。
&&&&&&&&&CMIDFrameWnd:多文档框架窗口类,MDI应用程序主框架窗口的基类。
&&&&&&&&&CMDIChildWnd:多文档框架窗口类,MDI应用程序文档框架窗口的基类。
2.&视类:Cview类
&&&&该类表示框架窗口的客户区和显示文档数据并接收输入的客户区,其派生类主要有如下几种:
&&&&&&&&&CScrollView:具有滚动条功能的视的基类。
&&&&&&&&&CFormView:其布局在对话框中定义的滚动视。
&&&&&&&&&CEditView:具有文本编辑,查找,替换和滚动功能的视。
3.&菜单类:Cmenu类
&&&&该类是Cobject类的子类,它提供一个面向对象的菜单界面。它是一个WindowsHMenu的封装,提供了与窗口有关的菜单资源建立,修改,跟踪及删除的成员函数。
4.&对话框类:Cdialog类
&&&&由于对话框是一个特殊的窗口,所以该类是从CWnd中派生出来的。对话框子层次结构包括通用对话框类Cdialog以及支持文件选择,颜色选择,字体选择,打印,替换文本的公共对话框子类。这些子类包括:
&&&&&&&&&CFileDialog:提供打开或保存的标准对话框。
&&&&&&&&&CColorDialog:提供选择一种颜色的标准对话框。
&&&&&&&&&CFontDialog:提供选择一种字体的标准对话框。
&&&&&&&&&CPrintDialog:提供打印一个文件的标准对话框。
&&&&&&&&&CFindReplaceDialog:提供一次查找并替换操作的标准对话框。
&&&&&&&&&Cdialog:该类可用于建立模态和非模态对话框模型,是该子层次结构的根。
&&&&&控件子层次结构包括若干类,使用这些类可建立静态文本,命令按钮,位图按钮,列表框,组合框,滚动条,编辑框等。主要控件类如下:
&&&&&&&&&Cstatic:静态文本控件窗口。常用于标注,分隔对话框或窗口的其他控件。
&&&&&&&&&Cbutton:按钮控件窗口。该类为对话框或窗口的按钮,检查框或单选按钮提供一个总的接口。
&&&&&&&&&Cedit:编辑框控件。编辑框控件用于接收用户的文字输入。
&&&&&&&&&CScrollBar:滚动条控件。提供控件条的功能,用作对话框或窗口中的一个控件,用户可通过它在某一个范围定位。
&&&&&&&&&CListBox:列表框控件。列表框用于显示一个组列表框,用户可以移动游标选择一个值或一个范围。
&&&&&&&&&CComboBox:组合框控件。组合框由一个编辑框控件加一个列表框组成。
&&&&&&&&&CBitmapButton:带有位图而非文字标题的按钮。
6. 控件条类:CControlBar
&&&&控件条子层次结构为工具条,状态条,对话框和分割窗口建立模型。该类是CToolBar,CStatusBar,CDialogBar的基类,负责管理工具条,状态条,对话框的一些成员函数。控件条指的是连接在主窗口框架的顶部或底部的小窗口,它具有如下基类:
&&&&&&&&&CStatusBar:状态条控件窗口的基类。
&&&&&&&&&CToolBar:包含非基于HWND的位图式命令按钮的工具条控件窗口。
&&&&&&&&&CDialogBar:控件条形式的非模态对话框。
7.&绘画对象类:CGdiObject类
&&&&图形绘画对象子层次结构以CGdiObject类为根类,可用于建立绘画对象模型,如画笔,画刷,字体等。这些子类有:
&&&&&&&&&Cbitmap:封装一个GDI位图,提供一个操作位图的接口。
&&&&&&&&&Cbrush:封装一个GDI画刷,可选择为设备描述表的当前画刷。
&&&&&&&&&Cfont:封装一个GDI字体,可选择为设备描述表的当前字体。
&&&&&&&&&Cpen:封装一个GDI画笔,可选择为设备描述表的当前画笔。
8.&设备描述表类:CDC类
&&&&该类及其子类支持设备描述表对象,是Coject类的子类。CDC类是一个较大的类,包括许多成员函数,如映射函数,绘画工具函数,区域函数等,通过CDC对象的成员函数可以完成所有的绘画工作,它的子类具体请看p187页介绍。
8.2.5 通用类
&&&&通用类提供了许多服务,例如文件I/O,诊断和异常处理类,此处还包括数组和列表等存放数据集的类。
1.&文件类:Cfile类和Carchive类
&&&&如果想编写自己的输入/输出处理函数,可以使用Cfile类和Carchive类,一般不必再从这些类中派生新类。以下是部分文件类:
&&&&&&&&&Cfile类:提供访问二进制磁盘文件的总接口,Cfile对象通常通过Carchive对象被间接访问。
&&&&&&&&&CStdioFile类:提供访问缓存磁盘文件的总接口,通常采用文本方式。
&&&&&&&&&VMemFile类:提供访问驻内存文件的总接口。
&&&&&&&&&Carchive类:与Cfile对象一起通过窜行画实现对象的永久存储。
2. 异常类:Cexception类
&&&&该类是所有异常情况的基类,供C++的try/thow/catch异常处理机制使用,它不能直接建立Cexception对象,程序员只能建立派生类对象。可以使用派生类来捕获指定的异常情况,Cexception的派生类如下:
&&&&&&&&&CNotSupportedException:不支持服务异常。
&&&&&&&&&CMemoryException:内存异常。
&&&&&&&&&CFileException:文件异常。
&&&&&&&&&CResourceException:资源异常。
&&&&&&&&&COleException:OLE异常。
&&&&&&&&&CDBException:数据库异常。
&&&&&&&&&CUseException:终端用户操作异常。
&&&&产生异常的原因描述将储存再异常对象的m_cause数据成员中。
3. 模板收集类
&&&&这些类可以将对象存放到数组,列表和映射中。单这些收集类是模板,它们的参数确定了存放在集合的对象类型。Carray,Cmap和Clist类使用全局帮助函数,帮助函数通常必须定制。类型指针是类库中其他类的包装类,利用这些包装类,应用程序可借助于编译器的类型检查以避免出错,下列是部分模板收集类:
&&&&&&&&&Carray类:将元素存储在数组中。
&&&&&&&&&Cmap类:将键映射到值。
&&&&&&&&&Clist类:将元素存储在一链表中。
8.2.6&&OLE类
&&&&OLE是处理复合文档的一种方法,代表对象链表和嵌入技术。所谓复合文档,就是在一个文档中同时保存了如文本,图像和声音等多种不同类型的数据,而这些数据又可以通过不同程序不同格式产生。
&&&&MFC中提供了对OLE技术体系的全方位的支持。它提供OLE基类,可视编辑容器类,可视编辑服务器类,数据传送类,
OLE对话类和杂项等六种类来封装OLE技术。
&&&&目前基于OLE的类比较丰富。主要有:
&&&&普通类:COleDocument,COleItem,COleException为支持的普通类。
&&&&客户类:COleClientDoc,COleClientItem为支持的OLE客户类。
&&&&服务类:COleServer,COleTemplate,COleServerDoc,COleServerItem为支持的OLE的服务类。
&&&&可视编辑容器类:COleClientItem及COleLinkingDOC提供用于OLE容器的基础结构区支持可视编辑类。
&&&&数据传送类:COleDropSource,COleDropTarget,COleDataSource和COleDataObject封装拖放操作及通过剪贴板进行数据传送操作。
&&&&对话类:COleInsertDialog显示标准的OLE对话框。
&&&&杂项类:如CRectTracker,它围绕一个插入在复合文档中的项建立边框,这样可使该项移动和调整大小。
8.2.7&&ODBC数据库类
&&&&为了支持向带有ODBC驱动程序的各种数据库管理系统提供标准化界面ODBC标准,MFC提供了Cdatabase和Crecordset类。Cdatabase封装对一数据源的连接,通过此连接应用程序可在该数据源上进行操作,Crecordset类封装了从一数据源选出一组记录。ODBC子层次结构提供了一些类支持ODBC特征,同时,这些类封装了ODBCAPI,并允许用户继承自Crecordset类的成员函数把存储在数据库中的数据作为被查询,更新和其他方式操作的对象来处理,即通过这些类可开发数据库应用程序类访问多个数据库文件。该层次结构中主要包括的类有:
&&&&CRecordView:它由CFormView派生,该类将记录对象连接到显示当前记录的字段值的一个表单视图来简化操作。
&&&&CFileExchange:提供上下文信息,支持记录字段交换,即在字段数据成员,记录对象的参数数据成员及数据源上的对应列表之间进行数据交换。
&&&&CLongBinary:封装一存储句柄,用于存储二进制的对象,例如位图等。
&&&&CDBException:记录数据存取处理过程的失败产生的异常。
ZHUANZAI&.cn/s/blog_74abqox.html
我的热门文章
即使是一小步也想与你分享07-0507-0507-0507-0507-0507-0507-0507-0507-0507-05最新范文01-0101-0101-0101-0101-0101-0101-0101-0101-0101-0101-0101-0101-0101-0101-012012年12月 总版技术专家分月排行榜第一2012年10月 总版技术专家分月排行榜第一2012年9月 总版技术专家分月排行榜第一2012年8月 总版技术专家分月排行榜第一
2012年11月 总版技术专家分月排行榜第三
2011年 总版技术专家分年内排行榜第三2010年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第五
本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 荣耀8屏幕碎了只换外屏 的文章

 

随机推荐