MFC工具栏位置问题

要编写一个图片浏览程序,在做界面的时候想把工具栏放在下面居中的位置,像这样:我试过将m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);... 要编写一个图片浏览程序,在做界面的时候想把工具栏放在下面居中的位置,像这样:

我试过将
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
这两项设置为CBRS_ALIGN_BOTTOM,但调试时会出现

这样的问题。
请问还有什么可用的方法么?
我现在的界面:
展开
 我来答
ssilspro
2013-04-26 · TA获得超过2625个赞
知道大有可为答主
回答量:1148
采纳率:0%
帮助的人:1718万
展开全部
  • 把创建工具栏的样式CBRS_TOP改成CBRS_BOTTOM就行

    int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
    if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
    return -1;
    if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
    | CBRS_TOP//把这个CBRS_TOP改成CBRS_BOTTOM就行
    | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))


  • 或者用CFrameWnd::DockControlBar

    DockControlBar(&m_wndToolBar,AFX_IDW_DOCKBAR_BOTTOM);
    void DockControlBar(
    CControlBar* pBar,
    UINT nDockBarID = 0,
    LPCRECT lpRect = NULL
    );


  • 至于EnableDocking是 "将要" 停靠在哪,或者说允许停靠在哪


  • 如果要使工具条浮动,调用CFrameWnd::FloatControlBar

    void FloatControlBar(
    CControlBar * pBar,
    CPoint point,
    DWORD dwStyle = CBRS_ALIGN_TOP
    );


更多追问追答
追问
第一个方法就成功了啊,太感谢了!还有我想问一下,有没有什么方法可以使那些按钮在工具栏的中间呢?
追答

DockControlBar的第3个参数不是一个CRect指针么,你用它试试

或者用MoveWindow也行

______

DockControlBar不知道坐标它怎么算的

用MoveWindow吧

void CMainFrame::OnSize(UINT nType, int cx, int cy)
{
CMDIFrameWnd::OnSize(nType, cx, cy);
// TODO: 在此处添加消息处理程序代码
CRect rt1,rt2;
m_wndToolBar.GetWindowRect(&rt1);
m_wndToolBar.ScreenToClient(&rt1);
GetClientRect(&rt2);
m_wndToolBar.MoveWindow((rt2.Width()-rt1.Width())/2,rt1.top,rt1.Width(),rt1.Height());
}
565210
2013-04-25 · TA获得超过358个赞
知道小有建树答主
回答量:812
采纳率:0%
帮助的人:347万
展开全部
听说这个函数可以 DockControlBar
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jellycgl
2013-04-25 · TA获得超过417个赞
知道小有建树答主
回答量:1149
采纳率:66%
帮助的人:892万
展开全部
调用工具栏的MoveWindow
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式