• <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>

            幽魂國度

             

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

            函數(shù)介紹: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)    //除前兩個參數(shù),其他參數(shù)都有初始值
            {
             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  來判斷選擇哪個函數(shù)。

            程序過程:
               頭文件:
            CButtonST m_btnHelp;
               源文件:
            1)在當前對話類的初始化函數(shù)中添加:
            OnInitDialog()
             m_btnHelp.SetIcon(IDI_HELP, (int)BTNST_AUTO_GRAY);           //設(shè)置圖標,未點擊時變灰
             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)設(shè)置控件交換信息:
            DoDataExchange(CDataExchange* pDX)函數(shù)中
             DDX_Control(pDX,IDC_BUTTON1,m_btnHelp);  //輸出
            3)新菜單欄響應函數(shù):
            新建一菜單欄:IDR_MENUNEW,設(shè)置為POP-UP;
            設(shè)置子菜單:IDR_ITEM1.點擊ClassWizard,選擇當前文檔類點擊ON_COMMAND設(shè)置響應函數(shù)。

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

            導航

            統(tǒng)計

            常用鏈接

            留言簿

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久婷婷五月综合97色 | aaa级精品久久久国产片| 7国产欧美日韩综合天堂中文久久久久| 久久夜色精品国产亚洲| 久久久久亚洲精品天堂久久久久久| 亚洲va中文字幕无码久久不卡| 欧美亚洲另类久久综合婷婷 | 久久亚洲国产精品五月天婷| 亚洲精品无码久久一线| 伊人久久一区二区三区无码| 国产精品女同久久久久电影院| 麻豆成人久久精品二区三区免费 | 久久99热这里只频精品6| 青青草原综合久久大伊人导航| 久久99精品九九九久久婷婷| 丁香狠狠色婷婷久久综合| 久久精品无码一区二区三区| 久久综合香蕉国产蜜臀AV| 国产精品9999久久久久| 9久久9久久精品| 亚洲伊人久久综合中文成人网| 亚洲欧美国产日韩综合久久| 欧美精品丝袜久久久中文字幕 | 日产精品久久久久久久| 国产一久久香蕉国产线看观看| 伊人丁香狠狠色综合久久| 欧美日韩精品久久久久| 久久久久久久女国产乱让韩| 狠狠色婷婷久久综合频道日韩| 久久精品国产亚洲77777| 国产福利电影一区二区三区久久老子无码午夜伦不 | 国产精品成人无码久久久久久 | a高清免费毛片久久| 久久se精品一区精品二区国产| 模特私拍国产精品久久| 日产精品久久久久久久性色| 国产高潮国产高潮久久久| 久久国产成人亚洲精品影院| 久久亚洲高清综合| 久久久久国产精品| 久久亚洲私人国产精品vA|