MFCのツールバー(CMFCToolBar
)をデフォルトの外観(CMFCMenuBar
)のように透明にしたいとします。CMFCToolBarのCMFCMenuBar種類の透明度
ツールバーの作成時にコントロールのスタイルTBSTYLE_FLAT | TBSTYLE_TRANSPARENT
を使用していて、透明な背景を取得しています。しかし、私はまだ上下の境界線を持っているし、グリッパーも同じままです。
SetBorders(0,0,0,0)
またはスタイルを削除すると、CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM
はそのトリックを行いません。
CCS_NODIVIDER
(明らかに2ピクセルの上端を削除するため)を使用しても効果はありません。
カスタムのCMFCVisualManager
クラスが(例えば、CMFCVisualManager::OnFillBarBackground
で遊んでいる)方法であるかもしれないと思っていますが、まだそれについて何かを理解できませんでした。明確にすることが
が、これは私が現在持っているコードです:
そして、これが私の目標です::私は今午前どこ
m_wndToolBar.CreateEx(this /*MainFrame*/, TBSTYLE_FLAT | TBSTYLE_TRANSPARENT,
WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP)
LoadToolBar(IDR_MY_TOOLBAR, 0, 0, TRUE);
m_wndToolBar.SetPaneStyle(GetPaneStyle() & ~(CBRS_BORDER_TOP |
CBRS_BORDER_BOTTOM |
CBRS_BORDER_LEFT |
CBRS_BORDER_RIGHT));
m_wndToolBar.SetBorders(0,0,0,0);
ここだ
すべてのヘルプは非常にあります驚いた!
あなたは 'CBRS_GRIPPER'を削除してみましたか?ツールバーの作成/修正に使用している実際のコードを質問に投稿することを検討してください。 –
私はグリッパーを削除したくない、私はちょうどそれがCMFCMenuBarと同じ方法、すなわち透明に見える持っていると思います。 – mrknownothing