Creating Floating Pop-Up Menus

Floating pop-up menus are one of the latest trends in user interface design. The user presses the right mouse button and a floating menu offers choices that relate to the current selection. It's easy to create these menus using the resource editor and the MFC library CMenu::TrackPopupMenu function. Just follow these steps:

  1. Use the menu editor to insert a new, empty menu in your project's resource file.

  2. Type some characters in the left top-level item, and then add your menu items in the resulting pop-up menu.

  3. Use ClassWizard to add a WM_CONTEXTMENU message handler in your view class or in some other window class that receives mouse-click messages. Code the handler as shown below.

    void CMyView::OnContextMenu(CWnd *pWnd, CPoint point) {     CMenu menu;     menu.LoadMenu(IDR_MYFLOATINGMENU);     menu.GetSubMenu(0)         ->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,         point.x, point.y, this); }

    You can use ClassWizard to map the floating menu's command IDs the same way you would map the frame menu's command IDs.



Programming Microsoft Visual C++
Programming Microsoft Visual C++
ISBN: 1572318570
EAN: 2147483647
Year: 1997
Pages: 332

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net