Visual C++ 2005图像编程之工具栏

http://tech.ddvip.com   2008年08月29日    社区交流

本文详细介绍Visual C++ 2005图像编程之工具栏

  

  在属性设置界面中,存在过滤的工具栏,选择第五个的消息事件按钮,下面就列出了此类所有可用的消息,选择对应的消息,在右边的下拉框你添加消息响应函数即可。选择消息的时候最下面还会有消息的一些说明帮助我们理解这个消息。

  

  在WM_WINDOWPOSCHANGED消息函数里,我们先判断工具栏是否处于停靠状态,如果是浮动状态就去掉系统菜单。这里需要注意的时,虽然在界面上看工具栏时浮动非停靠的,实际上工具栏是停靠在一个CMiniFrameWnd框架里。我们这里所指的系统菜单就是这个CMiniFrameWnd的系统菜单。

void CBaseToolBar::OnWindowPosChanged(WINDOWPOS FAR* lpwndpos)
{
 CToolBar::OnWindowPosChanged(lpwndpos);
 if(IsFloating())
 {
  if(m_pDockBar) // m_pDockBar指向停靠的窗口对象
  {
   //如果停靠窗口是 CMiniFrameWnd就去掉系统菜单
   //在IsFloating函数为FALSE的时候这个m_pDockBa的父窗口就是主框架
   CWnd* pParent = m_pDockBar->GetParent();
   if( pParent->IsKindOf(RUNTIME_CLASS(CMiniFrameWnd)))
    pParent->ModifyStyle(WS_SYSMENU, 0, 0 );
  }
 }
}

  现在我们实现这2个基本的功能。在介绍的过程中,我特别的加入了一些图片,希望给那些对Visual C++ 2005不熟悉的朋友提供一些帮助。在后续的介绍中就不会再做介绍了。

责编:豆豆技术应用

正在加载评论...