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

            對wxWidgets中wxMenuItem的修改

            問題:
            用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不但沒有顯示紅色,而且與其它菜單項(xiàng)無法對齊。

            原因:
            查看了一下源代碼,發(fā)現(xiàn)menu item的ownerdraw屬性是在wxMenu::Append()時(shí)決定的。在調(diào)用wxMenu::Append()之后的代碼中對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 閱讀(889) 評(píng)論(0)  編輯 收藏 引用 所屬分類: wxWidgets

            国内精品久久久久影院亚洲| 色噜噜狠狠先锋影音久久| 久久婷婷色综合一区二区| 久久久久久久久久久| 国产一级做a爰片久久毛片| 久久精品国产精品亚洲| 久久AV高潮AV无码AV| 日韩亚洲欧美久久久www综合网| 国产精品美女久久福利网站| 国产精品久久久久久福利69堂| 久久久久国产一区二区| 国产午夜免费高清久久影院| 久久久精品人妻无码专区不卡| 亚洲欧美日韩中文久久| 久久综合九色综合久99| 精品久久久久久久久中文字幕| 亚洲精品国精品久久99热| 国产精品成人久久久久三级午夜电影| 亚洲美日韩Av中文字幕无码久久久妻妇 | 怡红院日本一道日本久久 | 久久精品国产亚洲一区二区| 色婷婷狠狠久久综合五月| 香蕉久久一区二区不卡无毒影院| 国产美女亚洲精品久久久综合| 国产精品热久久毛片| 狠狠狠色丁香婷婷综合久久俺| 一本久久a久久精品亚洲| 久久亚洲av无码精品浪潮| 国产精品九九久久免费视频| 2022年国产精品久久久久| 精品国产一区二区三区久久久狼 | 久久久噜噜噜久久中文字幕色伊伊| 久久国产美女免费观看精品| 久久青青草原精品影院| 亚洲va久久久噜噜噜久久狠狠| 精品久久久久久无码免费| 国产精品青草久久久久福利99| 久久久WWW成人免费毛片| 久久高清一级毛片| 欧美久久一级内射wwwwww.| 久久综合久久鬼色|