Question and Answer Database FAQ995C.txt Using EnableMenuItem Category :OWL Platform :All Product :BC++ 5.x Question: I've got a problem with the TMenu.EnableMenuItem function. From a TWindow I used : TMenu menu(Parent->HWindow); (Parent is a TDecoratedFrame) menu.CheckMenuItem(CM_COLLECTE,MF_CHECKED|MF_BYCOMMAND); works fine but menu.EnableMenuItem(CM_CERTIF,MF_GRAYED|MF_BYCOMMAND); doesn't work even with Parent->DrawMenuBar(); MF_GRAYED|MF_DISABLED doesn't work too Answer: Chances are you need to read up on command enablers. Somewhere in your prog you have something like: EV_COMMAND(CM_MYCOMMAND, CmMyMethod) Si? So, beneath it add the line EV_COMMAND_ENABLE(CM_MYCOMMAND, CeMyMethod) and declare a member function CeMyMethod as follows: void MyWindow::CeRDSConnect(TCommandEnabler& e) OWL calls this function (if it exists) during idle time (which happens a LOT) and passes you a 'Command Enabler' for the command. You can enable, disable, or gray it here, and any menu or button anywhere referencing that command in your program will get grayed, checked, or whatever. 7/2/98 10:32:32 AM
Last Modified: 01-SEP-99