概念性的问题
我是VC的入门者,有些概念性的东西尚不能理解。
1.我想知道MFC和windows API之间的关系,MFC是建筑在windows API之上的,还是两这处于同一个层次?我觉得他们应该是一个层次上的。例如画一个窗口,手工编码是可以的,用MFC也可以,调用API也可以,不知道说的对不对。
2.如果手工编码可以画一个窗口的话,应该怎样做,能否给个例子?我不要详细的,只要知道能这么做就可以了。
问题点数:30、回复次数:8Top
1 楼musicdancer(饭盆)回复于 2001-02-03 23:05:00 得分 0
你是说像在turbo C的那种自绘窗口?那你得自己实现自己的窗口类!哇~good,你不用API或MFC的绘图函数?自己写?可以呀,用图形接口函数比如“graphic.h”之类
哦,MFC封装了API ,为了方便使用及使对象化
Top
2 楼musicdancer(饭盆)回复于 2001-02-03 23:11:00 得分 0
A P I
就是应用程序接口,一般就在接口上作程序了,还因为窗口是要操作系统管理的,自己写的窗口不用API你怎么和操作系统打交道?Top
3 楼vcbear(http://vcbear.mblogger.cn)回复于 2001-02-03 23:28:00 得分 0
想知道MFC和API的关系,随便单步(用F11)跟踪一个MFC的函数(比如CDC::TextOut什么的)到MFC的代码里看就知道了,或者直接看vc目录里MFC子目录里的文件.Top
4 楼stzhou(阿毛)回复于 2001-02-03 23:39:00 得分 0
1.MFC是建立在API之上的,其实现还是调用了API。(简单说就是将API按一定的功能写成类的形式封装起来)
2.windows中,窗口属于windows的资源,是不需要手工编码的,只要createwindow(API函数)后就可以建立一个窗口,具体内容可参考一些非MFC的windows程序例子和MSDN。Top
5 楼Robert2001(Robert2001)回复于 2001-02-03 23:49:00 得分 0
1//API比MFC要相对低一点
如果你是从VB 转向VC的话 我建议你学MFC
如果你是从C C++ 转向VC的话,我看你还是先去看API
反正最后两个 你都要学。
2//例子不用我给,VC向导 能建立一个最简单的小程序,比如 MFC 的一个SDI 或者WIN32的一个HELLOWORLD 你按这 向导做就行了。 很简单!!Top
6 楼lhxx(随风)回复于 2001-02-04 02:42:00 得分 0
1 MFC就是将API进行了封装,用起来比较方便,你对比一下MFC的CWnd::MessageBox()和::MessageBox()的区别就知道了
2 当然可以用手工画,!!!画...太麻烦了吧,你要知道这样做是很无聊而且浪费时间的,因为你既然用了VC就要学会用它的资源,就如STZHOU所说窗口是资源。Top
7 楼css()回复于 2001-02-04 08:57:00 得分 0
到底谁说的比较对?我相信MFC肯定会对API进行封装,但是不是MFC仅仅是建立在API上,还是其中也包括其他的东西?不知道我这么问是不是很幼稚,呵呵。Top
8 楼attackboy(我像是飘在城市的一片尘埃)回复于 2001-02-04 11:39:00 得分 30
给你一个满意的答复:
1.最初的Windows API(现在有人称Win16)适用于C语言的开发环境,编程人员
就可以着手开发利用Window api的GUI应用程序。所以API是基于过程的接口!
后来C++新型语言广泛应用。1992年MICROSOFT公司将这个接口开发
成为他的应用程序的框架,AFX产品。后来该产品又演变为目前的MICROSOFT
的基础类MFC产品!!!你必须清楚:windows api是面向对象的接口。这
就意味着可以通过句柄或规定的界面用程序于系统对象(如窗口,笔等)进行交互操作
,而他的后代MFC除了他老爸的封装外还有菊成,多态性等特性。
2.当然可以,这就可以象写API的c那样,用graphic.h等写出新的东东,参考大学
C教程!!!
满意请加分,呵呵。。。Top




