VC视图文档结构
2017-03-03 11:00
323 查看
近期需要编写一个简单的矢量绘图程序,在选择开发软件时想使用QT,因不太熟练最终放弃。决定还使用熟悉的VC。
说来惭愧,其实VC从大学就开始接触。但是现在还不太熟练,不敢说游刃有余。先熟悉下基本框架,视图文档结构。这个框架是MVC框架的简化,只有MV,将VC合并了。
主要有三个大的部件。框架类,视图类,文档类。视图类负责绘制及用户交互,文档类负责数据存储,框架类负责两个类的管理,可以简单的理解窗口内除了绘图区都是框架类负责管理。视图类就是绘图区。类的通信,通过在视图类调用getDocument来获取文档对象,可以主动操作文档。当文档类有数据变动时,通过upDateAllView来通知关联的视图对象的onUpdate,进而调用OnDraw绘制文档对象数据。视图类通过菜单,按钮,按键负责和用户交互。当处理用户命令时,不要直接调用绘图命令。而是将用户输入转换为一个标志命令,然后调用this->Invalidate();使绘图区无效。视图类会调用onDraw函数统一绘制数据。
说来惭愧,其实VC从大学就开始接触。但是现在还不太熟练,不敢说游刃有余。先熟悉下基本框架,视图文档结构。这个框架是MVC框架的简化,只有MV,将VC合并了。
主要有三个大的部件。框架类,视图类,文档类。视图类负责绘制及用户交互,文档类负责数据存储,框架类负责两个类的管理,可以简单的理解窗口内除了绘图区都是框架类负责管理。视图类就是绘图区。类的通信,通过在视图类调用getDocument来获取文档对象,可以主动操作文档。当文档类有数据变动时,通过upDateAllView来通知关联的视图对象的onUpdate,进而调用OnDraw绘制文档对象数据。视图类通过菜单,按钮,按键负责和用户交互。当处理用户命令时,不要直接调用绘图命令。而是将用户输入转换为一个标志命令,然后调用this->Invalidate();使绘图区无效。视图类会调用onDraw函数统一绘制数据。
相关文章推荐
- 利用AppFace美化VC程序(对话框或文档视图结构)
- 使用单文档视图结构把Word嵌入到VC程序中
- VC随笔文档视图结构
- 使用单文档视图结构把Word嵌入到VC程序中
- 使用单文档视图结构把Word嵌入到VC程序中(2)
- 使用单文档视图结构把Word嵌入到VC程序中(2)
- 使用单文档视图结构把Word嵌入到VC程序中(2)
- 利用AppFace美化VC程序(对话框或文档视图结构)
- VC多文档(MDI)视图结构无法执行CMainFrame::OnCreate
- VC文档与视图结构学习总结
- VC随笔文档视图结构
- 使用单文档视图结构把Word嵌入到VC程序中(转)
- 以模态的形式显示应用到文档/视图框架结构实例
- 单文档视图结构中利用OpenGL绘制图形
- 文档/视图结构中的各个部分是如何联系到一起的
- 框架、文档与视图的毁灭(VC学习笔记)
- VC单文档切分动态更换多视图代码分析
- 深入分析MFC文档视图结构(项目实践)
- MFC文档视图结构
- MFC单文档/视图结构穷追猛打