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

            brent's hut

            對(duì)wxWidgets中wxMenuItem的修改

            問(wèn)題:
            用DialogBlocks設(shè)計(jì)了一個(gè)菜單,菜單中的圖標(biāo)大小為16X16,并在DialogBlocks自動(dòng)生成的代碼CreateControls()函數(shù)的后面設(shè)置所有菜單項(xiàng)的顏色為紅色。運(yùn)行后效果如圖。
            wxMenuOld.jpg
            兩個(gè)菜單項(xiàng):Page Setup和Exit不但沒(méi)有顯示紅色,而且與其它菜單項(xiàng)無(wú)法對(duì)齊。

            原因:
            查看了一下源代碼,發(fā)現(xiàn)menu item的ownerdraw屬性是在wxMenu::Append()時(shí)決定的。在調(diào)用wxMenu::Append()之后的代碼中對(duì)wxMenuItem的修改不會(huì)影響到實(shí)際物理菜單的ownerdraw屬性。

            解決:
            把所有非separator的所有菜單設(shè)置為owndraw。
            修改wxWidgets目錄下的 \src\msw\menu.cpp文件:
            bool wxMenu::DoInsertOrAppend(wxMenuItem *pItem, size_t pos)
            {
            #if wxUSE_ACCEL
            ??? UpdateAccel(pItem);
            #endif // wxUSE_ACCEL

            ?pItem->SetOwnerDrawn(!pItem->IsSeparator()); //Brent
            ?...
            }

            效果:
            mywxMenu.jpg

            posted on 2006-07-17 11:03 brent 閱讀(879) 評(píng)論(0)  編輯 收藏 引用 所屬分類: wxWidgets

            日韩va亚洲va欧美va久久| 国产精品亚洲综合专区片高清久久久| 色偷偷91久久综合噜噜噜噜| 午夜视频久久久久一区 | 日本精品一区二区久久久| 亚洲v国产v天堂a无码久久| 亚洲精品乱码久久久久久按摩| 久久午夜伦鲁片免费无码| 久久精品亚洲乱码伦伦中文| 色欲久久久天天天综合网| 精品国产91久久久久久久| 久久久午夜精品| 中文字幕一区二区三区久久网站| 国产69精品久久久久观看软件 | 日本亚洲色大成网站WWW久久| 午夜不卡久久精品无码免费| 久久精品国产清自在天天线| 久久免费的精品国产V∧| 日日狠狠久久偷偷色综合免费| 丰满少妇人妻久久久久久| 久久精品国产亚洲AV忘忧草18| 激情五月综合综合久久69| 国产精品99久久99久久久| 97精品伊人久久久大香线蕉| 久久九色综合九色99伊人| 久久精品中文字幕久久| 无码精品久久久久久人妻中字 | 精品人妻伦九区久久AAA片69| .精品久久久麻豆国产精品| 久久妇女高潮几次MBA| 国产精品久久久久久久久久影院| 国产精品成人99久久久久| 国产精品VIDEOSSEX久久发布| 久久夜色精品国产亚洲| 色综合久久精品中文字幕首页| 国产亚洲欧美精品久久久| 国产精品无码久久综合 | 国产精品激情综合久久| 国产精品日韩深夜福利久久| 国产精品99久久久久久猫咪| 久久久久无码专区亚洲av|