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

            常用鏈接

            留言簿

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            91久久九九无码成人网站| 久久人人爽人人爽人人片AV东京热 | 久久精品国产亚洲AV香蕉| 无码国内精品久久人妻麻豆按摩| 色婷婷久久久SWAG精品| 国产色综合久久无码有码| 99久久精品国产高清一区二区| 久久99国产精品成人欧美| 一本一道久久综合狠狠老| 亚洲国产成人久久精品影视| 一本色道久久88综合日韩精品| AV狠狠色丁香婷婷综合久久| 亚洲AⅤ优女AV综合久久久| 久久er99热精品一区二区| 亚洲精品国产综合久久一线| 中文字幕成人精品久久不卡| 热re99久久精品国99热| 久久综合狠狠综合久久97色| 亚洲国产精品久久久久网站 | 一本久久a久久精品vr综合| 久久青青草原综合伊人| 亚洲va久久久噜噜噜久久| 久久久久久噜噜精品免费直播| 久久精品国产秦先生| 亚洲精品国产美女久久久| 亚洲国产成人精品无码久久久久久综合 | 亚洲欧美精品伊人久久| 久久亚洲春色中文字幕久久久 | 久久青青草原亚洲av无码| 亚洲国产二区三区久久| 国产精品久久精品| 成人妇女免费播放久久久| 午夜人妻久久久久久久久| 久久人人爽人人爽人人av东京热| 久久成人精品| 久久综合日本熟妇| 无码国内精品久久综合88 | 一级做a爱片久久毛片| 伊人久久综合热线大杳蕉下载| 久久最近最新中文字幕大全 | 国产精品免费看久久久|