如何在单文档文件中嵌入对话框

如何在单文档文件中嵌入对话框,第1张

建立一个"单文档"的工程中,用户视图的基类改为CView,在编程中就有了ondraw函数(成员函数),而在CFormView情况下就没有ondraw函数(成员函数),CFormView是CView类的派生类,在CFormView类里可以放很多控件,即“带有菜单并可以添加控件的工程”。

View必须和document一起工作,CView不能在资源编辑器中编辑,但是CFormView可以,一般来说,view是用来显示document中保存的数据,并且响应界面的消息,view自己一般不保存数据,和对话框的功能完全不同。对话框是独立的,数据放在对话框中。因为document的数据千差万别,所以view必须使用最低级的手段来显示这些数据,在OnDraw函数中,直接人工编码在CDC对象上画图。而对话框要显示的是control,windows知道如何显示,因此不需要编码显示对话框。

视图是显示文档数据或图形的一个矩形区域,一般位于窗口或对话框的中心位置,而对画框包含视图和边框,可以利用GDI对视图进行OnDraw *** 作,一个对话框有以下几部分组成:显示标题的标题栏;边框;菜单(如果要加的话);控制按钮;视图

视图和对话框都是从窗口类CWnd中派生的。

如果是通用对话框,比如打开文件、保存文件、颜色对话框什么的,就直接用CFileDialog、CColorDialog类的变量,然后DoModal,比如:

CColorDialog

dlg

if(dlg.DoModal()==IDOK)

{

COLORREF

c=dlg.GetColor()

}

如果你想自己定义对话框,就选画好对话框,然后在对话框上单击右键,选“Class

Wizard...",会出现提示问是否创建相应的对话框类,选“Yes“,然后给对话框类取一个名字,比如CMyDialog,点OK后,就行了。调用时也是用DoModal()。比如:

CMyDialog

dlg

dlg.DoModal()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11401483.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存