• <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ì)話類(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 閱讀(786) 評(píng)論(0)  編輯 收藏 引用


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


            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿

            隨筆檔案

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            色诱久久久久综合网ywww| 久久se精品一区二区影院| 性高朝久久久久久久久久| 中文字幕亚洲综合久久菠萝蜜| 中文成人无码精品久久久不卡| 女人高潮久久久叫人喷水| 久久这里只有精品18| …久久精品99久久香蕉国产| 精品综合久久久久久888蜜芽| 国产91久久精品一区二区| 久久人人超碰精品CAOPOREN| 影音先锋女人AV鲁色资源网久久| 久久综合欧美成人| 久久SE精品一区二区| 天天久久狠狠色综合| 久久综合噜噜激激的五月天| 日本精品久久久久中文字幕| 麻豆一区二区99久久久久| 欧美亚洲另类久久综合婷婷| 人人狠狠综合久久亚洲婷婷| 无码精品久久久天天影视| 久久久久人妻精品一区三寸蜜桃 | 亚洲国产精品无码久久青草 | 99久久精品国产一区二区| 热久久最新网站获取| 99久久久久| 狠色狠色狠狠色综合久久| 久久午夜无码鲁丝片| 久久综合亚洲鲁鲁五月天| 久久国产热这里只有精品| 9999国产精品欧美久久久久久 | 精品国产日韩久久亚洲| 国产精品成人99久久久久| 国产精品久久午夜夜伦鲁鲁| 97久久国产综合精品女不卡 | 久久人人爽人人澡人人高潮AV| 久久这里只有精品首页| 久久精品无码一区二区三区| 99久久精品国内| 免费观看成人久久网免费观看| 久久99国产精品99久久|