dcsimg

Disable close button for Dialog box

Introduction :
There are occasions when we would like to disable the close button on a dialog or any other window. In this article I am going to show you a simple way to do that. Even though I am going to show you how to disable the close button for a dialog, this technique would work for other windows too and for other system menu commands also.

Technique :
We use GetSystemMenu function to get the handle to the Control menu. Then using that handle we either call ModifyMenu or EnableMenuItem to change the control menu.

(1) Using ModifyMenu :
Add the following code to the InitDialog handler of your class


   CMenu* mnu = this->GetSystemMenu(FALSE);
   mnu->ModifyMenu(SC_CLOSE,MF_BYCOMMAND | MF_GRAYED );
(2) Using EnableMenuItem :
Add the following code to the InitDialog handler of your class

   CMenu* mnu = this->GetSystemMenu(FALSE);
   mnu->EnableMenuItem( SC_CLOSE, MF_BYCOMMAND|MF_GRAYED);
Thus by adding a couple of lines we can disable the close button for a dialog or any other window.


Date Last Updated: March 24, 1999



This article was originally published on March 24th, 1999

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date