• <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設計了一個菜單,菜單中的圖標大小為16X16,并在DialogBlocks自動生成的代碼CreateControls()函數的后面設置所有菜單項的顏色為紅色。運行后效果如圖。
            wxMenuOld.jpg
            兩個菜單項:Page Setup和Exit不但沒有顯示紅色,而且與其它菜單項無法對齊。

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

            解決:
            把所有非separator的所有菜單設置為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 閱讀(881) 評論(0)  編輯 收藏 引用 所屬分類: wxWidgets

            亚洲欧洲中文日韩久久AV乱码| 99久久国产热无码精品免费| 久久精品国产黑森林| 久久综合久久伊人| 久久久久久久久无码精品亚洲日韩| 久久精品视频网| 久久午夜福利电影| 色婷婷综合久久久久中文 | 久久成人小视频| 久久人人爽人人爽人人片AV不| 99久久免费国产精精品| 久久无码AV中文出轨人妻| 久久久久久精品成人免费图片| 国产精品久久国产精品99盘| 亚洲成av人片不卡无码久久| 91精品国产91久久综合| 久久精品国产精品亚洲精品| 国内精品久久久久影院网站| 久久成人精品视频| 色婷婷综合久久久中文字幕 | 久久婷婷五月综合97色| 久久99精品九九九久久婷婷| 好属妞这里只有精品久久| 亚洲国产精品无码久久一线| 中文字幕久久精品| 亚洲国产一成久久精品国产成人综合| 97久久久久人妻精品专区| 久久精品国产亚洲AV无码偷窥| 日产精品久久久久久久| 热综合一本伊人久久精品| 91精品国产高清久久久久久91 | 亚洲午夜福利精品久久| 久久综合九色综合久99| 久久精品不卡| 久久成人国产精品一区二区| 99精品久久久久久久婷婷| 99热热久久这里只有精品68| 久久91精品综合国产首页| 久久久久亚洲AV成人网| 亚洲精品WWW久久久久久 | 日韩欧美亚洲综合久久影院d3|