gpt4 book ai didi

c++ - 如何更改 CMFCToolBar 运行时

转载 作者:行者123 更新时间:2023-11-28 00:01:32 26 4
gpt4 key购买 nike

在某些情况下,我需要使用同一个 CMFCToolBar 对象(它是 CMainFrame 的成员)在我的 SDI 应用程序中切换工具栏。我正在尝试这样做:

void CMainFrame::ChangeTlbr(const int tlbIdx)
{
m_wndToolBar.ResetImages();
switch (tlbIdx)
{
case 0 :

m_wndToolBar.LoadToolBar(IDR_TLBR1);

break;
case 1:

m_wndToolBar.LoadToolBar(IDR_TLBR2);

break;
}

m_wndToolBar.Invalidate();
m_wndToolBar.UpdateWindow();
}

但是没有加载下一个工具栏的位图。

在这种情况下我做错了什么,是否有更好的方法来做到这一点?

最佳答案

下面的函数展示了如何用另一个定义为 IDR_MAINFRAME1 的工具栏替换当前工具栏:

void CMainFrame::OnChangeToolbar()
{
m_wndToolBar.ResetAllImages();
m_wndToolBar.LoadToolBar(IDR_MAINFRAME1);
m_wndToolBar.LoadBitmap(IDR_MAINFRAME1);
m_wndToolBar.AdjustSizeImmediate();
}

关于c++ - 如何更改 CMFCToolBar 运行时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38588238/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com