对话框作为主窗口?

use*_*914 10 windows winapi dialog

是否通常使用Dialog作为主Windows?那么没有通过RegisterClassEx注册任何用户类?我可以通过CreateWindow()完成我所做的一切吗?为什么我应该通过CreateWindow()创建按钮,编辑框等控件,而不是只创建一个Dialog并将其用作主窗口?

我也想知道对话框和窗口之间的主要区别,以及为什么要使用第一个而不是第二个.

谢谢

Jes*_*ood 6

通常使用对话框作为主窗口吗?

是的,这很常见。

所以没有通过RegisterClassEx注册任何用户类?

对话框通常是预定义的窗口类,因此通常不需要注册。

我还想知道对话框和窗口之间的主要区别,以及为什么使用第一个而不是第二个。

好吧,两个很大的区别是您不能调整对话框的大小,并且它没有最小化或最大化按钮(默认情况下,但有解决方法)。记住名称,对话框。换句话说,它们用于与用户进行对话(接收输入并向用户显示消息)。从某种意义上说,它们就像任何其他窗口一样,在 CreateWindowxx 等下面被调用等等。但是,它们在某种程度上是预定义的窗口,可以快速创建,并且您可以使用它们执行的操作存在限制。

此外,对话框使用对话框过程而不是窗口过程,它会为您进行一些默认处理,例如初始化一些控件等。