Re: How to close a modal propertysheet?
Looking at the question, I thought that the original poster was trying to
*send* WM_COMMAND to close the dialog. Like, SendMessage( ... ). I assumed
all sending occured from outside of the dialog (which is yet another puzzle,
how did he do anything outside of a modal dialog? multithreading??)
I hope I am wrong, but then why to even intercept the WM_COMMAND for
IDCANCEL? Cancel button closes the MFC dialog without having to handle
WM_COMMAND, at least last time I checked...
I wonder if getting rid of OnCommand handler will fix the issue.
"Tom Serface" <tom.nospam@camaswood.com> wrote in message
news:1CE2BB47-FF34-40E1-8ED4-0BB9FCF586F2@microsoft.com...
The code that you show here looks OK. Have you tried calling:
PressButton(PSBTN_CANCEL);
Instead of EndDialog() to simulate the user pressing the cancel button?
You could also trace into the EndDialog() function and see what is
happening in there.
Tom
"bucher" <bucher@xxxx.com> wrote in message
news:elNE3nirHHA.1208@TK2MSFTNGP05.phx.gbl...
Hi,
I want to close a modal propertysheet by sending WM_COMMAND message. The
code in propertysheet like this:
BOOL CSysConfigSheet::OnCommand(WPARAM wParam, LPARAM lParam)
{
if (wParam == IDCANCEL && lParam == 0) {
EndDialog(IDCANCEL);
return TRUE;
}
return CPropertySheet::OnCommand(wParam, lParam);
}
I have stepped the code. EndDialog was called. But the property was not
closed. Is there any mistake in my code? Thanks in advanced>