Главная страница | назад

Article #17445: Command Enabling

 Question and Answer Database

FAQ2445C.txt   Command Enabling
Category   :VCL
Platform    :All
Product    :C++Builder  3.x

What is a good way to implement command enabling in the VCL?

You might put command enabling in the OnClick event of the parent window. 
Which gets called before displaying the menu. So if you want to enable/disable paste
and the menu option is on the edit menu then in the onclick event for the
edit menu check to see if there is anything on the clipboard


Body is a TMemo*

void __fastcall TMainForm::EditMenuClick(TObject *Sender)
    EditUndoItem->Enabled   = (Body->CanUndo);
    EditPasteItem->Enabled  = Clipboard()->HasFormat(CF_TEXT);
    EditCopyItem->Enabled   = (Body->SelLength > 0);
    EditCutItem->Enabled    = (Body->SelLength > 0);
    EditDeleteItem->Enabled = (Body->SelLength > 0);

7/2/98 10:32:32 AM

Last Modified: 01-SEP-99