我给工具栏每个按钮设置了文字,但文字都在图标的下方
我想让文字在图标的右边,跟图标并排,该怎么办?
给出有益意见的朋友都给分。请大家帮个忙

解决方案 »

  1.   

    修改与工具栏对应的bmp文件就可以啦
      

  2.   

    工具栏文字设置可以
    先用SetSizes()来设置button和位图的大小
    再调用SetButtonText(int nIndex , LPCTSTR lpstText)
    设置工具按钮上所显示的文字,当然想并排很简单把文字加入图片就可
      

  3.   

    int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
    if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
    return -1;

    if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT|TBSTYLE_LIST, WS_CHILD | WS_VISIBLE | CBRS_TOP
    | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
    {
    TRACE0("Failed to create toolbar\n");
    return -1;      // fail to create
    } if (!m_wndStatusBar.Create(this) ||
    !m_wndStatusBar.SetIndicators(indicators,
      sizeof(indicators)/sizeof(UINT)))
    {
    TRACE0("Failed to create status bar\n");
    return -1;      // fail to create
    } // Add text to each button
    for(int i = 0; i < m_wndToolBar.GetCount(); i++)

    UINT id = m_wndToolBar.GetItemID(i);
    CString s;
    if(!s.LoadString(id)) continue;
    int j = s.Find(_T('\n'));
    if(j < 0) continue;
    s = s.Right(s.GetLength() - j - 1);
    m_wndToolBar.SetButtonText(i,s);
    }// Adjust sizes to include text

    CRect rect;
    m_wndToolBar.GetItemRect(0,&rect);
    m_wndToolBar.SetSizes(rect.Size(),CSize(16,15)); // TODO: Delete these three lines if you don't want the toolbar to
    //  be dockable
    m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
    EnableDocking(CBRS_ALIGN_ANY);
    DockControlBar(&m_wndToolBar); return 0;
    }
    -----------------
    关键是在创建时。设置风格为TBSTYLE_LIST,该风格导致文本标签显示在按钮右边。
      

  4.   

    if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT|TBSTYLE_LIST, WS_CHILD | WS_VISIBLE | CBRS_TOP
    | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
    {
    TRACE0("Failed to create toolbar\n");
    return -1;      // fail to create
    }