我已经继承CEdit生成一个新类,我知道不显示Menu通过OnContextMenu来控制.
但我只想让其中几个Menu无效,该如何做呢.

解决方案 »

  1.   

    http://www.codeproject.com/editctrl/cmenuedit.asp
      

  2.   

    谢谢,pomelowu(羽战士) ,那篇文章我看过了,他是重新画Menu了.
    我只是想把一些不用的Unicode禁用,不能重写Menu.
      

  3.   

    一般来说,因为截获不到WM_INITMENUPOPUP,只能自己在OnContextMenu中自绘了。另外,Edit的右键菜单是在user32.dll的资源中的。你可以这样获得这个菜单
    HMODULE hInstUser = LoadLibrary("USER32.DLL");
    HMENU hMenu = LoadMenu( hInstUser, MAKEINTRESOURCE(1));
    然后你可以修改这个菜单。但是话说回来,这种做法是Undocumented的,而且随系统的不同,导致的结果也是不能保证的。