如何看懂一个小型的mfc写的工程。本人只会基础的c和c++。要求只是看懂,最好可以修改一下就行了的。
3个回答
展开全部
首先稍微分析一下mfc,如果是基于对话框,那就比较简单了(是指文件比较少,不是指难度),比如你的工程叫test,那么会有一下几个头文件,test.h,testDlg.h,stdafx.h,Resource.h,其中Resource.h不用鸟,stdafx.h基本不用鸟,里面全是要用到的mfc基础头文件
test.h中包含了一个app类,这个类我觉得还是很重要的,可以用来放所有的全局变量,因为最后有一句extern CAccountBookApp theApp; 所以在其他任何cpp文件中都可以用theApp.xx 来调用某个全局变量,这点可以很好的解决不同对话框之间传数据,这个问题曾困扰我很久,以前也老是看不明白为什么会存在这个test.h,根本没用嘛,最近才发现这个类的妙用的。
所以这里要看的话就看类中有没有变量了
最后是testDlg.h 这是主对话框类,你给界面上的控件添加一个变量或者增加一条消息处理函数,都会在这里增加声明,所以这里要看的话就看添加进去的变量和函数
下面是cpp文件test.cpp和stdafx.cpp就不说了,完全没用(还没发现)。
最重要的是testDlg.cpp,所有的函数实现都在这里(当然没自定义类什么的情况下),其本身生成的时候就有的语句是定义about对话框相关的内容,就是CAboutDlg开头那大段,不用管,跟本程序相关的开始于testDlg类构造函数那,然后是DoDataExchange,BEGIN_MESSAGE_MAP,OnInitDialog,OnSysCommand,OnPaint和OnQueryDragIcon,作用的话就不展开了,lz还是要自己努力
接下来的东西全是自己添加进去的,基本上全是消息处理函数,最基本的消息处理函数可能是onbutton(),也就是按下某个按钮的处理,还有常见的OnShowWindow(刚弹出对话框后的处理),具体实在太多了,如果lz想知道的话可以留言 ,我会乐意尽力帮你解答
差不多先这样吧
test.h中包含了一个app类,这个类我觉得还是很重要的,可以用来放所有的全局变量,因为最后有一句extern CAccountBookApp theApp; 所以在其他任何cpp文件中都可以用theApp.xx 来调用某个全局变量,这点可以很好的解决不同对话框之间传数据,这个问题曾困扰我很久,以前也老是看不明白为什么会存在这个test.h,根本没用嘛,最近才发现这个类的妙用的。
所以这里要看的话就看类中有没有变量了
最后是testDlg.h 这是主对话框类,你给界面上的控件添加一个变量或者增加一条消息处理函数,都会在这里增加声明,所以这里要看的话就看添加进去的变量和函数
下面是cpp文件test.cpp和stdafx.cpp就不说了,完全没用(还没发现)。
最重要的是testDlg.cpp,所有的函数实现都在这里(当然没自定义类什么的情况下),其本身生成的时候就有的语句是定义about对话框相关的内容,就是CAboutDlg开头那大段,不用管,跟本程序相关的开始于testDlg类构造函数那,然后是DoDataExchange,BEGIN_MESSAGE_MAP,OnInitDialog,OnSysCommand,OnPaint和OnQueryDragIcon,作用的话就不展开了,lz还是要自己努力
接下来的东西全是自己添加进去的,基本上全是消息处理函数,最基本的消息处理函数可能是onbutton(),也就是按下某个按钮的处理,还有常见的OnShowWindow(刚弹出对话框后的处理),具体实在太多了,如果lz想知道的话可以留言 ,我会乐意尽力帮你解答
差不多先这样吧
展开全部
有c和c++基础就够了,MFC顾名思义微软基础类,是面向对象的,C++也可以面向对象编程。MFC里面有很多基础的类库,你碰到没见过的的查一查就行了。MFC有三种结构,单文档,多文档,和对话框模式。这三种模式在你不添加任何功能的情况下,熟悉下代码和功能,以后多练习就可以应用自如了,祝你好运!
追问
现在时有一个程序、 应该是mfc直接写的可视化编程、 要怎么开始分析这个程序呢? 谢谢~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先学MFC,要不里面的一些常用函数、以及MFC编程理念都不知道。
追问
先学mfc得看那些东西呢? 因为时间所限,所以暂时要理解就行。
追答
随便买本VC++教程,前半部分是C++,后半部分是MFC基础知识。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询