1

WTLでCreateSimpleReBarを使用する場合、メインメニューバーはマウスホバーでこの青色になり、ネイティブのvista/7の丸くて透明な形状ではありません。また、何らかの理由で、メニューバーは通常のネイティブメニューよりも高いように見えます。

CreateSimpleReBarはメニュー自体を描画しますか、それとも何かが足りませんか?

http://imageshack.us/photo/my-images/259/wtlmainmenu.png/

HWND hWndCmdBar = m_CmdBar.Create(m_hWnd, rcDefault, NULL, ATL_SIMPLE_CMDBAR_PANE_STYLE);
// attach menu
m_CmdBar.AttachMenu(GetMenu());

// load command bar images
m_CmdBar.LoadImages(IDR_MAINFRAME);
// remove old menu
SetMenu(NULL);

// Set m_hWndToolBar member
CreateSimpleReBar(ATL_SIMPLE_REBAR_NOBORDER_STYLE);

// Add a band to the rebar represented by m_hWndToolBar
AddSimpleReBarBand(hWndCmdBar);
4

1 に答える 1

1

CreateSimpleReBarm_CmdBar.Create鉄筋コントロールを作成します。メニューは、 -WTLのCCommandBarCtrlクラスによって作成された鉄筋バンドの1つです。後者は、COLOR_MENUHILIGHT(atlctrlw.h)を使用した青色の強調表示など、OSの動作を模倣するようにメニューをカスタム描画します。

于 2012-04-10T07:54:16.843 に答える