请问各位,当我在一个对话框中创建一个工具栏时,我怎么确定工具栏的具体位置?工具栏必须在菜单栏的下方出现,在对话框窗口的左边出现.我用的视图-框架结构.我不想由框架创建工具栏.

解决方案 »

  1.   

    你可以修改MainFram中的OnCreate函数,把其中m_wndToolBar.CreateEx(...)去掉,添加你自己的工具栏或直接修改CreateEx中的参数,有停靠位置的宏,你改那个可以修改停靠位置。
      

  2.   

    我不想在CMainFrame类中创建工具栏,我只想在对话框中创建.但创建时无法确定工具栏的位置.
      

  3.   

    用RepositionBars调整位置试试看。
      

  4.   

    我也想到用RepositionBars. RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0).MSDN中关于参数的说明说的不清楚,不详细,不知道我这种情况怎么设置这个函数的参数.
      

  5.   

    不太懂哦,你是用什么函数创建的工具栏啊?下面的链接你看看,也许对你有帮助呵~
    http://blog.csdn.net/vcleaner/archive/2004/11/16/183569.aspx
    我最近也想学MFC,所以到处看看~
      

  6.   

    http://www.codeproject.com/KB/toolbars/fotoolbar.aspx
      

  7.   

    PS:那个CToolBar的CreateEx函数其中有个参数是CRect类型的,不知道为什么网上查的都没用。
      

  8.   

    在对话框中创建的工具栏一定会出现在标题栏下面,这个是没有办法改变的.近来看到了一个CReBar,这个东西里可以放置工具栏,如果这个东西的位置可以随意放置的话,问题就解决了,没有实验过,你试试吧!呵
      

  9.   

    你菜单栏是直接加进去的吧,那么工具栏这样创建就可以了~ 工具栏就在菜单下面的:
    BOOL bCreateToolBar = m_ToolBar.CreateEx(this,TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP |CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC); //创建工具条BOOL bLoadToolBar = m_ToolBar.LoadToolBar(IDR_PICVIEW_TOOLBAR);  //加载工具条if(!bCreateToolBar || !bLoadToolBar)
    {
      OutputDebugStringW(L"初始化工具条失败~");
      return FALSE;                        
    }RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0); //调整工具条的位置