禁用对话框控件MFC

时间:2010-02-25 06:56:49

标签: mfc dialog

如何禁用对话框窗口中的所有控件?我知道我可以用 EnableWindow(FALSE); 但这似乎不是一个好主意,因为现在用户无法单击“确定”或“取消”按钮或按“X”图标退出。对话就像冻结一样。

我正在寻找的是一种禁用对话框中所有控件的方法,同时为用户提供退出的一些方法。

另一种解决方案是通过遍历所有对话框控件并禁用它们来手动执行此操作,但这会变得乏味。有什么简单的方法吗?

感谢。

1 个答案:

答案 0 :(得分:4)

很抱歉,但是通过所有控件并禁用每个控件的简单方法。

您可以使用EnumChildWindows或使用循环调用GetWindow(... GW_HWNDNEXT)编写一个通用函数来执行此操作,直到它为下一个窗口返回NULL。

请记住跳过禁用IDCANCEL为id的窗口。