2012-08-28 10:20
⁄ 工业·编程
⁄ 共 3048字
任何事件的触发与响应均要通过消息的作用才能得以完成。在SDK编程中,对消息的获取与分发主要是通过消息循环来完成的,而在MFC编程中则是通过采取消息映射的方式对其进行处理的。
1、自定义消息及映射其流程
定义一个消息:一般在StdAfx.h 中声明一个消息.自定义消息一般从(VM_USER+100)开始,以免与系统定义的消息冲突:#define WM_MYMESSAGE (WM_USER+100)
在类的定...
MFC, 消息机制阅读全文
2012-08-28 10:12
⁄ 工业·编程
⁄ 共 1768字
一)列表控件(CListCtrl)
了解一个单词先:Item行,一般我们都是用到位报表形式,即report,可以在列表控件的属性里设置.这里也只介绍这种形式.(一般都是会设置一个列表控件的变量)
1、其中InsertItem用于向列表控件插入一行,并设置第零列的值,如果有多列,该行其他列的值要使用SetItemText来设置数据。假设共3 列数据:
m_ListCtrl.InsertItem(cnt, "gg");//插入一行,cnt:行号从0开始计数 m...
MFC阅读全文
2012-08-28 09:50
⁄ 工业·编程
⁄ 共 4042字
一、框架窗口
框架窗口在其大小被改变的时候会收到WM_SIZE消息,这个消息的处理函数是CFrameWnd::OnSize,此函数接着调用RecalcLayout来重新安置各子窗口,它的主体代码如下:
》》》MFC窗口位置管理分析
if(GetStyle() & FWS_SNAPTOBARS)
{
CRect rect(0, 0, 32767, 32767);
RepositionBars(0, 0xffff, AFX_IDW_PANE_FIRST, reposQuery, &rect, &rect, FALSE);
RepositionBars(0, 0xffff, AFX_IDW_PANE_FIRST, rep...
MFC, 原理阅读全文
2012-08-28 08:03
⁄ 工业·编程
⁄ 共 9049字
在一般用MFC编写的程序的窗口客户区中,可能有好几个子窗口(具有WM_CHILD风格的窗口)。上边是工具栏,中间是视图窗口,下边是状态栏。三个窗口在框架的客户区里和平共处,互不重叠。主框架窗口的尺寸改变了,别的子窗口都能及时调整自己的尺寸以便保持相互位置关系不变,例如状态条窗口总能保持在主框架客户区底部,并且其宽度总能和主框架客户区宽度一致。工具栏窗口总能停靠在主框架的某一边不变,其宽...
MFC, MVC阅读全文
2012-08-27 23:50
⁄ 工业·编程
⁄ 共 1034字
前面我学习了文档视图机构之诞生。
诞生的过程中CDocManger,CDocTemplate,CRunTimeClass.这些机构发挥了重要的作用。CDocManger负责管理CDocTemplate.. CDocTemplate负责创建D/V/F结构。不过这个创建过程都需要CRunTimeClass帮助才能实现类动态创建。
这里我学习文档视图结构的基本运转。
文档视图机构的运转涉及到很多的内容。不过一个基本的内容就是文档的保存和文档打开。以及文档与...
MFC, 框架阅读全文
2012-08-27 23:47
⁄ 工业·编程
⁄ 共 3642字
Document/View 结构可以看作是MFC的精华之一。MFC中许多成本都耗在了这个机构上了。
Document/View与Smalltalk/Stus 中MVC结构是相同的概念。只是各自的实现不同而已。这里只谈MFC。其M=Document,V=view,C=CDocmager + CDocTemplate. 当然这只是简而言之。具体内部是比较复杂的(比如为此MFC内建许多共享结构和宏)。
由于D/V结构是一个比较复杂的机构所以我打算分阶段的学习先学习...
MFC, 框架阅读全文
2012-08-27 23:43
⁄ 工业·编程
⁄ 共 1168字
在Windows中绘图就需要使用到GDI 概念。GDI其实就是一个设备无关的图形包。这样的类似图形包有比如OpenGL,VTK等。不过GDI的特点就是其是二维的并且被封装进了Winows的API当中。不过Windows图形编程当中还有一个特点就是各个程序都有自己的输出窗口,每个程序间需要隔离,windows使用设备表述表表示。所以在做Windows图形编程的时候常要使用两个东西一个是DC(设备描述表)一个是GDI。
...
MFC, 框架阅读全文
2012-08-27 23:42
⁄ 工业·编程
⁄ 共 1746字
现在来学MFC,嘿嘿!有些落伍了!不过我也有我的原因。第一 要完成的毕业程序跟网络基本上没什么关系。在独立PC上做windows 程序,一般而言MFC一般是不二选择。 其次现在.net,j2ee什么的框架虽然先进些,但是手头上却没有他们实现的源代码。net自不必说,java那套的东西找起来又麻烦。而MFC源代码在VC上自带着对于学习者而言这是莫大的福音。其三 但就我理解框架而言MFC已经包括框架的基本要求功能延伸和设...
MFC, 框架阅读全文
2012-08-27 23:12
⁄ 工业·编程
⁄ 共 946字
1.首先是App类的对象.-->AfxWinMain()(编译器连接的AfxWinMain()中包括了 -->AfxWinInit()的调用 -->InitApplication(...
MFC阅读全文
2012-08-27 23:10
⁄ 工业·编程
⁄ 共 2170字
CMainFrame是CApp类的主程序窗口(如果是选MDI或SDI结构的话),也就是程序的一个框架。 CApp中如无特殊的要求不用加什么代码,CMainFrame中也是根据需要,如按照微软提供的框架也不需要加什么代码。 CDocument一般和CView一起使用,这样的程序叫文档/视图结构。 CDocument中加的代码主要是和你的文档内容有关的,如文档中信息(对象)等,需要处理的一般有文档内容的编辑、删除、添加、序列化(读写文件...
MFC, MVC阅读全文