我在对话框类头文件中添加:
protected:
   m_wndToolBar;在其实现文件中通过类向导重载:OnCreate()函数,添加如下代码:
   if(!m_wndToolBar.create(this)||!m_wndToolBar.LoadToolBar(IDR_TOOLBAR1))
      return -1;
IDR_TOOLBAR1是我定义好的一个工具条资源。
编译没有问题,可是程序运行后看不到工具条,这是什么原因?到底是对话框程序不能添加工具条,还是还需要再加个什么语句才能显示出来? 帮帮我吧。我都有点想放弃学VC了,实在是太难了,MFC里面各个类,成员,消息等等之间的关系实在是太错宗复杂了,越往下学越没有信心了。郁闷中。。
还有VC里面好多东西都要编程实现,用VB点几个鼠标就行了。
VC功能的确比VB强多了,可是有很多WINDOWS固定的功能,为什么还要程序员来实现呢?
举个例子:VB加一个背景图片,只要点下picture属性,选一张就行了,傻瓜都会,可对于初学者来说,在VC里要加一张背景图片,恐怕就不是一件容易的事了。徘徊啊。。

解决方案 »

  1.   

    //添加一个平面工具条
    if (!m_wndtoolbar.CreateEx( this,TBSTYLE_FLAT ,  WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS,
        CRect(4,4,0,0)) || !m_wndtoolbar.LoadToolBar(IDR_TOOLBAR1) )
    {
    TRACE0("failed to create toolbar\n");
    return FALSE;
    }
    m_wndtoolbar.ShowWindow(SW_SHOW);
    RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);http://www.vckbase.com/document/viewdoc/?id=265
      

  2.   

    最关键的是
    RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);
      

  3.   

    为什么我在很多书上还有向导生成的SDI程序里,它们在加载工具条的时候不要后面的两个语句呢?