用Cdialog为基类 和 Cwnd为基类创建的窗体有什么不一样?

不要说一个是对话框,另一个是窗口从表面上看CDialog创建的窗口可以有菜单,最大化按钮,最小化按钮Cwnd也有这些,两个到底有什么区别.如果两个创建的窗口是相同的那为什... 不要说一个是对话框,另一个是窗口

从表面上看CDialog创建的窗口可以有菜单,最大化按钮,最小化按钮
Cwnd也有这些,两个到底有什么区别.

如果两个创建的窗口是相同的那为什么要用两种不同的方式创建.

对不起,我的分不够了只能给十分了,请原谅一下
CDialog类继承自Cwnd类CDialog针对对话框窗体所专门设计的类 它只要使用父类的成员函数 也可以达到Cwnd类效果

1.的意思是两个没有区别吗?
如果没有区别哪为什么不把从Cwnd继承的类设计都弄成可视化设计

2.不如把所有的设计全部改成可视化设计(包括Cwnd,和从Cwnd派生的类)
展开
 我来答
alpswolf
推荐于2016-09-05 · TA获得超过3520个赞
知道大有可为答主
回答量:1989
采纳率:0%
帮助的人:1396万
展开全部
Cdialog从CWnd派生,所谓派生是指保留父类的所有特性,然后允许延伸出自己的特性.因此CDialog保留了窗口程序所有的特性,比如最大化,最小化......
同时它发展了自己的特性,如按钮,编辑框,资源文件......
Leo239
2007-08-06 · TA获得超过305个赞
知道小有建树答主
回答量:589
采纳率:0%
帮助的人:232万
展开全部
不要把CDialog与CWnd当成类的特殊情况,你问为什么要从CWnd派生出CDialog类来,我认为,一句话是方便使用.就像你问为什么要把某些东西封装成类一样的道理.
CDialog与CWnd有什么区别,这个从类的继承关系来看,CDialog包函CWnd,所以说,他们的不同在于CDialog比CWnd拥有更多的成员函数或者成员变量可以使用.

从使用角度来看,CDialog是作为更适合用来显示对话框的窗口的而设计的,而CWnd则比较广泛的可用于显示任何类型的窗口,包括一个按钮,当然,我们也可以使用CWnd类来显示对话框窗口,只要你不会觉得麻烦了点.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6b6835fd2
2007-08-06 · TA获得超过182个赞
知道小有建树答主
回答量:388
采纳率:0%
帮助的人:0
展开全部
CDialog类继承自Cwnd类CDialog针对对话框窗体所专门设计的类 它只要使用父类的成员函数 也可以达到Cwnd类效果.而Cwnd类创建的是通用的窗体 比如文档视图之类的.

---------------------------------

Cwnd 是用API函数创建窗口??? 看看MFC类图 Cwnd是MFC二级类.

--------传说中的分隔线----------------------------

继承概念你因该去了解先.有区别 Cwnd属于概念类 一般来说设计窗体都不会使用它 都会使用相应的三级类 比如CDialog,CView类等 它们都有自已的作用 就算是使用Cwnd类 也不能创建有三级类的那些特性.

不如全改Cwnd? 那不如说全部改成CObject.把所有类的方法都加到CObject类中去 就都不用其它类了.呵 那就无层次结构而言了....这样 我也不知道如何说它的坏处.呵.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jackzengsys
2007-08-06
知道答主
回答量:36
采纳率:0%
帮助的人:8.8万
展开全部
CDialog 是用控件创建窗口。Cwnd 是用API函数创建窗口。CDialog 主要用与在可视化。而Cwnd 可用与一般和可视化。在一般编程中只能使用Cwnd .我以前是学java 现在刚开始研究vs2005 希望高手来回答这个题目。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hyuangx
2007-08-06 · 超过42用户采纳过TA的回答
知道小有建树答主
回答量:144
采纳率:0%
帮助的人:138万
展开全部
很简单吧,Cdialog可以用资源文件,方便多了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式