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()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)