Win32 GUI:调整对话框的大小

时间:2010-02-10 14:42:59

标签: user-interface winapi

我有一个基于Win32对话框的基本应用程序。如何调整大小?

如果它是一个窗口,默认情况下这是可能的(并且它将触发WM_SIZE)。我是对话新手,我无法弄清楚如何:1。当鼠标光标悬停在边缘时,它应该更改为IDC_SIZEWE或IDC_SIZENS,2。只需调整对话框大小,我知道如何定位对话框的内容

3 个答案:

答案 0 :(得分:2)

您不需要自己动手将光标移动到边缘,只需要在.rc文件或对话框编辑器中设置样式。

从对话框编辑器中:将边框设置为调整大小以允许调整对话框的大小。

直接编辑.rc文件:| WS_THICKFRAME追加到STYLE

答案 1 :(得分:0)

您在对话框中设置了哪些窗口样式?

如果您使用的是MFC等框架,则可以通过确保设置WS_THICKFRAME / WS_SIZEBOX或其他合适的窗口样式来修复不再可调整大小的对话框。在某些开发环境中,如果您正在使用具有运行时支持的内容,也可以在对话框的属性中进行设置。

如果您手动创建了该窗口,请在调用CreateWindow / CreateWindowEx时指定其中一个或其他窗口样式。某些窗口样式(例如WS_OVERLAPPED)也意味着可调整大小的框架。

Window Styles @ MSDN
CreateWindowEx @ MSDN

答案 2 :(得分:0)

注意 - 我尝试通过在onInit()窗口上调用ModifyStyle()来完成此操作。但它不起作用。你得到调整大小光标,但没有调整大小。

这显然必须在RC文件中设置,或者在窗口创建中可能更为明确。