解决什么是对话框窗口的收缩和扩展,扩展怎么实现不了

    上面的例子中第一次显示的是“唍整版”的什么是对话框窗口如何像画图程序一样,先显示一个“简化版”的什么是对话框窗口呢

显然,通过修改OnBtnDemo函数是无法解决问題的因为该函数是按钮控件点击事件的响应函数,它开始执行的时候初始的什么是对话框窗口已经被显示出来了同样,在什么是对话框窗口的构造函数中设置其显示尺寸和位置参数也是不行的因为此时的窗口尚未创建,GetWindowRect函数得不到正确的数值所以,获取显示尺寸和位置信息以及执行SetWindowPos函数的最佳时机应放在什么是对话框窗口创建之后第一次显示之前。

我们知道DoModal函数会调用CreatDialogIndirect函数来创建什么是对话框窗口窗口,窗口创建之后CreatDialogIndirect函数会发送一个WM_INITDIALOG消息此时,什么是对话框窗口和预设的所有控件都已经存在了但还没有显示出来。我们可以通过WM_INITDIALOG消息的响应函数OnInitDialog来对什么是对话框窗口及控件进行相关的设置和修改所以,什么是对话框窗口初次显示的大小和位置可在OnInitDialog函数中设置

    重新编译后,第一次显示的什么是对话框窗口如下图所示符合我们的预期。当我们点击“扩展>>”按钮时尽管标题会在“扩展>>”和“<<收缩”之间不停地切换,但什么是对话框窗口的大小却一直保持不变

    上述步骤和代码,可作为实现可伸缩什么是对话框窗口的标准来參考

针对 问题1给出如下代码:


}另外┅下4个是成员变量定义,并初始化


我要回帖

更多关于 什么是对话框窗口 的文章

 

随机推荐