回 帖 发 新 帖 刷新版面

主题:基于对话框的程序和基于窗体的程序有什么区别~~~

请问~~~
用CREATEWINDOW创建的程序~~
和使用DIALOGBOX创建的程序有什么区别~~
他们一般分别用仔什么地方啊~~

回复列表 (共3个回复)

沙发

首先  窗口的绘制基本上使用WM_PAINT消息响应  , 对话框是在资源文件(.rc)里面设置控件的样式位置 ,或者在对话框函数中使用GetDlgItem获取控件的窗口句柄来绘制 ; 窗口可以有菜单 ,而对话框没有  ;窗口有横纵座标  ,对话框没有 ; 可以用对话框实现的功能 ,窗口都可以实现,总的来说就是对话框是一个功能简易的窗口 ;

回答如有不当,请见谅。

板凳

不会吧, 对话框的绘制不是WM_PAINT,对话框可以使用其他方式设置控件样式,比如内存模板,对话框也可以加菜单吧~~

3 楼

CreateWindow创建一般的窗口,DialogBox是用来创建模式对话框,一般不处理WM_PAINT,处理WM_INITDIALOG而不是WM-CREATE,对话框也是窗口但是有自己的模版和特定的窗口过程函数,CreateDialog就可以加载对话框模版资源,如果以创建一般窗口的方法来创建对话框还应在模版中加入你创建的窗口类,应该在.rc中。

我来回复

您尚未登录,请登录后再回复。点此登录或注册