• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            幽魂國度

             

            如何設置按鈕控件點擊彈出新菜單欄

            函數介紹:CButtonST應用
            DWORD CButtonST::SetMenu(UINT nMenu, HWND hParentWnd, BOOL bRepaint)
            {
             
            HINSTANCE hInstResource = NULL;

             // Destroy any previous menu
             if (m_hMenu)
             {
                     ::DestroyMenu(m_hMenu);
                     m_hMenu = NULL;
                     m_hParentWndMenu = NULL;
                     m_bMenuDisplayed = FALSE;
             } // if

             // Load menu
             if (nMenu)
             {
              // Find correct resource handle
              hInstResource = AfxFindResourceHandle(MAKEINTRESOURCE(nMenu), RT_MENU);
              // Load menu resource
              m_hMenu = ::LoadMenu(hInstResource, MAKEINTRESOURCE(nMenu));
              m_hParentWndMenu = hParentWnd;
              // If something wrong
              if (m_hMenu == NULL) return BTNST_INVALIDRESOURCE;
             } // if

             // Repaint the button
                 if (bRepaint)  Invalidate();

                 return BTNST_OK;
            } // End of SetMenu

            DWORD CButtonST::SetMenu(UINT nMenu, HWND hParentWnd, BOOL bWinXPStyle, UINT nToolbarID, CSize sizeToolbarIcon, COLORREF crToolbarBk, BOOL bRepaint)    //除前兩個參數,其他參數都有初始值
            {
             BOOL bRetValue = FALSE;

             // Destroy any previous menu
             if (m_menuPopup.m_hMenu)
             {
                m_menuPopup.DestroyMenu();
                m_hParentWndMenu = NULL;
                m_bMenuDisplayed = FALSE;
             } // if

             // Load menu
             if (nMenu)
             {
                 m_menuPopup.SetMenuDrawMode(bWinXPStyle);
              // Load menu
                 bRetValue = m_menuPopup.LoadMenu(nMenu);
              // If something wrong
              if (bRetValue == FALSE) return BTNST_INVALIDRESOURCE;

              // Load toolbar
              if (nToolbarID)
              {
               m_menuPopup.SetBitmapBackground(crToolbarBk);
               m_menuPopup.SetIconSize(sizeToolbarIcon.cx, sizeToolbarIcon.cy);

               bRetValue = m_menuPopup.LoadToolbar(nToolbarID);
               // If something wrong
               if (bRetValue == FALSE)
               {
                m_menuPopup.DestroyMenu();
                return BTNST_INVALIDRESOURCE;
               } // if
              } // if

              m_hParentWndMenu = hParentWnd;
             } // if

             // Repaint the button
             if (bRepaint) Invalidate();

             return BTNST_OK;
            } // End of SetMenu

            通過#ifdef BTNST_USE_BCMENU  來判斷選擇哪個函數。

            程序過程:
               頭文件:
            CButtonST m_btnHelp;
               源文件:
            1)在當前對話類的初始化函數中添加:
            OnInitDialog()
             m_btnHelp.SetIcon(IDI_HELP, (int)BTNST_AUTO_GRAY);           //設置圖標,未點擊時變灰
             m_btnHelp.SetTooltipText(_T("Help"));                                             //輸出文字
            #ifdef BTNST_USE_BCMENU
             m_btnHelp.SetMenu(IDR_MENU, m_hWnd);                                  //點擊時彈出菜單欄
            #else
             m_btnHelp.SetMenu(IDR_MENU, m_hWnd);
            #endif
            2)設置控件交換信息:
            DoDataExchange(CDataExchange* pDX)函數中
             DDX_Control(pDX,IDC_BUTTON1,m_btnHelp);  //輸出
            3)新菜單欄響應函數:
            新建一菜單欄:IDR_MENUNEW,設置為POP-UP;
            設置子菜單:IDR_ITEM1.點擊ClassWizard,選擇當前文檔類點擊ON_COMMAND設置響應函數。

            posted on 2009-11-19 14:03 閱讀(781) 評論(0)  編輯 收藏 引用

            導航

            統計

            常用鏈接

            留言簿

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            国产成人综合久久综合| 久久最近最新中文字幕大全| 精品无码久久久久久国产| 亚洲?V乱码久久精品蜜桃| 国产成人精品免费久久久久| 亚洲v国产v天堂a无码久久| 久久精品成人欧美大片| 99久久精品免费看国产免费| 久久婷婷五月综合国产尤物app| 久久久精品久久久久特色影视| 久久免费小视频| 久久久久精品国产亚洲AV无码| 精品久久久久久中文字幕| 久久久久av无码免费网| 国产69精品久久久久99| 久久亚洲国产午夜精品理论片| 伊人 久久 精品| 国色天香久久久久久久小说| 久久精品国产亚洲5555| 嫩草伊人久久精品少妇AV| 亚洲国产香蕉人人爽成AV片久久| 成人国内精品久久久久影院| 久久精品国产亚洲av麻豆图片| 99久久精品免费观看国产| 97r久久精品国产99国产精| 国产A级毛片久久久精品毛片| 久久综合亚洲色HEZYO国产| 久久这里有精品| 久久国产欧美日韩精品| 久久久久一级精品亚洲国产成人综合AV区| 国内精品久久久人妻中文字幕| 婷婷久久综合九色综合绿巨人| 久久久久亚洲AV成人网人人软件| 狠狠久久亚洲欧美专区| AAA级久久久精品无码片| 久久久亚洲欧洲日产国码aⅴ| 久久综合久久综合九色| 免费国产99久久久香蕉| 国产三级观看久久| 久久久久国产一区二区 | 一本大道久久东京热无码AV |