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

            幽魂國(guó)度

             

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

            函數(shù)介紹:CButtonST應(yīng)用
            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)    //除前兩個(gè)參數(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

            通過(guò)#ifdef BTNST_USE_BCMENU  來(lái)判斷選擇哪個(gè)函數(shù)。

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

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


            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿

            隨筆檔案

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            97久久精品无码一区二区| 国内精品欧美久久精品| 久久频这里精品99香蕉久| 久久久这里只有精品加勒比| 久久久国产打桩机| 久久免费线看线看| 国产精品久久久久久久人人看 | 亚洲午夜精品久久久久久人妖| 久久综合久久综合久久综合| 久久久久久国产精品美女| 精品多毛少妇人妻AV免费久久| 色婷婷综合久久久久中文| 久久精品亚洲欧美日韩久久| 熟妇人妻久久中文字幕| 久久本道久久综合伊人| 国产美女久久久| 亚洲精品乱码久久久久久久久久久久 | 久久久一本精品99久久精品66 | 99精品久久精品一区二区| 国产一区二区三区久久| 色天使久久综合网天天| 精品国产一区二区三区久久蜜臀| 伊人久久大香线蕉亚洲五月天| 国产精品日韩欧美久久综合| 久久亚洲AV成人无码软件| 久久996热精品xxxx| 久久99中文字幕久久| 久久久久久国产精品免费无码 | 久久久久亚洲精品无码网址| 久久久久国产精品熟女影院 | 久久99国产乱子伦精品免费| 日本久久久久久久久久| 国产精品xxxx国产喷水亚洲国产精品无码久久一区| 欧美伊人久久大香线蕉综合| 日韩久久久久中文字幕人妻| 久久青青草原精品国产软件| 7国产欧美日韩综合天堂中文久久久久| 欧美黑人又粗又大久久久| 亚洲精品无码专区久久久| 综合人妻久久一区二区精品| 日产精品久久久久久久性色|