如何以编程方式结束对话框(即属性表)
how to end dialog box(i.e propertysheet) programmatically
我正在尝试从代码中关闭对话框(基本上派生自属性表类)。 以下是我的代码:
LRESULT CSettingsSheet::OnCloseSettings(WPARAM wParam, LPARAM lParam)
{
EndDialog(IDCANCEL);
return 0;
}
问题是endDialog不仅终止对话框,还终止主应用程序窗口。 这个问题的原因可能是什么?
顺便说一句,我在主窗口中创建此对话框,如下所示
if(settingsSheet.DoModal() == IDOK)
{
}
else
{
}
理想情况下,我应该使用 IDCANCEL 设置此 domodal 值,而不是调用结束对话框。
谢谢库拉姆。
您需要将PSM_PRESSBUTTON消息发送到属性表窗口:
模拟属性表按钮的选择。您可以显式发送此消息,也可以使用 PropSheet_PressButton 宏发送此消息。
PSBTN_CANCEL
- 选择"取消"按钮。
PSBTN_OK
- 选择"确定"按钮。使用 Aero 向导样式 (PSH_AEROWIZARD) 时,此值无效。
MFC 有一个用于此 CPropertySheet::P ressButton 的函数。
相关文章:
- 如何在Qbutton的帮助下更改Q对话框的宽度
- 当对话框被接受时,如何用参数调用槽
- WinAPI 在单击第一个对话框上的按钮控件并销毁第一个对话框后创建第二个对话框
- 如何多次询问来自QML对话框的输入?
- 选择文件对话框错误
- 自定义对话框(源自QDialog)不会关闭(Android)
- 如何在 MFC 对话框中使用 OnDraw
- 在C++中创建文件夹选取器对话框的最简单方法是什么?
- 从资源视图访问对话框时出现问题
- 如何检测窗口当前是否正在运行模式对话框?
- "最小化"按钮不会出现在 MFC 对话框中
- 如何获取QNetworkConfiguration UserChoice对话框?
- MFC 对话框属性表用法在 VS 2017 中产生错误,适用于 VS 2013
- 如何在"数据链接属性"对话框中自定义"连接"选项卡?
- 如何以编程方式结束对话框(即属性表)
- 文件属性对话框中的自定义选项卡
- VC++:如何在MFC对话框的属性表顶部显示控件
- 从属性页的事件处理程序调用DoModal()不会弹出对话框
- 无法使用属性表创建居中属性表对话框
- MFC对话框包含文件的属性页在Visual Studio 2008中显示为空