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

            力為的技術博客

            聯系 聚合 管理
              154 Posts :: 1 Stories :: 561 Comments :: 0 Trackbacks

            It's said in MSDN that:“Microsoft Windows assumes that all of a toolbar's bitmapped images are the same size. ” So the question is : How can we implement a toolbar?with different sized images, which is just like as Google Toolbar?


            There are two ways:

            1.To use double ImageLists

            You should note that the image's size of the toolbar is decided by?the first ImageList, even though the second one is different from the first one. So after registering double ImageLists, you also have to reset the button's size to suit the second imagelist.
            This is the code segment:

            a. setting double imagelist
            ????//1st?ImageList, with normal images
            ????m_hImage1st?=?ImageList_Create(16,?16,?ILC_COLOR24,?1,?0);
            ????
            int?nIdx11?=?ImageList_Add(m_hImageFirst,,NULL);
            ????
            int?nIdx12?=??ImageList_Add(m_hImageFirst,,NULL);

            ????????
            //2nd?ImageList, with bigger image
            ????m_hImage2nd?=?ImageList_Create(48,?16,?ILC_COLOR24,?2,?0);
            ????
            int?nIdx21?=ImageList_Add(m_hImage2nd?,,NULL);

            ????
            //?add?imagelists, the order is very important
            ????::SendMessage(m_hWnd,?CCM_SETVERSION,?(WPARAM)?5,?0);
            ????::SendMessage(m_hWnd,?TB_SETIMAGELIST,?
            0,?(LPARAM)m_hImage1st);
            ????::SendMessage(m_hWnd,?TB_SETIMAGELIST,?
            1,?(LPARAM)m_hImage2nd);

            ????
            //?set?button?image
            ????pTBBtn[0].iBitmap?=?MAKELONG(nIdx21,?1);
            ????pTBBtn[
            1].iBitmap?=?MAKELONG(nIdx11,?0);
            ????pTBBtn[
            2].iBitmap?=?MAKELONG(nIdx12,?0);

            b. resize the button with bigger image
            ????TBBUTTONINFO?tbi;????????????
            ????tbi.cbSize?
            =?sizeof(TBBUTTONINFO);
            ????tbi.dwMask?
            =?TBIF_STYLE?|?TBIF_SIZE;
            ????tbi.fsStyle?
            =?pTBBtn[0].fsStyle;
            ????tbi.cx?
            =?48;
            ????????::SendMessage(m_hWnd,?TB_SETBUTTONINFO,?nID,?(LPARAM)
            &tbi);

            And now, ?the first button of the toolbar has different sized image from others.

            2. To use Rebar control

            A rebar?control?may have many toolbars, so you can create two toolbars with different sized imagelist.(See MSDN.). But we can only create one toolbar in WTL by default, so it's a little complex to implement?using WTL in this method. You can try?this?in MFC.
            posted on 2006-06-11 15:39 力為 閱讀(2017) 評論(0)  編輯 收藏 引用 所屬分類: 6. COM&ATL&WTL
            久久九九久精品国产| 久久狠狠爱亚洲综合影院| 999久久久免费国产精品播放| 青青热久久综合网伊人| 精品国产一区二区三区久久蜜臀| 久久综合伊人77777| 久久亚洲春色中文字幕久久久| 久久综合狠狠色综合伊人| 久久久久亚洲av综合波多野结衣| 久久99国产精品一区二区| 久久久久久久免费视频| 久久综合九色综合97_久久久 | 国产成人精品久久免费动漫| 91久久成人免费| 久久婷婷五月综合97色| 久久这里有精品| 久久人人爽人人爽人人片AV麻豆 | 亚洲国产综合久久天堂| 好久久免费视频高清| 国产色综合久久无码有码| 精品综合久久久久久88小说| 久久精品国产亚洲AV无码麻豆| 四虎国产精品免费久久| 成人精品一区二区久久| 久久精品国产福利国产秒| 欧美精品久久久久久久自慰| 久久人人爽人人爽人人片AV麻烦| 性做久久久久久久久老女人| 国产成人AV综合久久| 大香网伊人久久综合网2020| 久久综合中文字幕| 青青青国产成人久久111网站| 69久久夜色精品国产69| 国产精品久久午夜夜伦鲁鲁| 伊人久久精品无码av一区| 久久久精品国产免大香伊| 久久久久亚洲精品日久生情 | 亚洲精品无码久久久| 久久精品国产亚洲AV蜜臀色欲| 欧美噜噜久久久XXX| 精品国际久久久久999波多野|