zoukankan      html  css  js  c++  java
  • 关于CFormView的滚动条和凹凸解决

    有一些问题:   
      1   如何去掉CFormView的滚动条?   
      2   如何使CFormView和CSplitterWnd相平,即CFormView不是凹下去的视觉   
      3   如何设置CSplitterWnd两边窗口的最小宽度,即不会被CSplitterWnd拖到为0   
      4   能否在CSplitterWnd边加上CToolBar   
        
     1:选择FormView的对话框   属性去掉水平和竖直滚动条属性,如果还不行加如下代码:   
      void   CXXXX::OnInitialUpdate()     
      { CFormView::OnInitialUpdate();   
        
      //   TODO:   Add   your   specialized   code   here   and/or   call   the   base   class   
      m_nMapMode   =   -1;   
      }   
      2:我想只能重载Splitter类了,然后再OnDrawSplitter里修改如下(已验证);   
      该代码的功能是让Splitter不画3D效果,也就是外边框和中间填充一个颜色,现在画灰色   
      void   CMySplitter::OnDrawSplitter(CDC   *pDC,   ESplitType   nType,   const   CRect   &rectArg)   
      {   
      if   (pDC   ==   NULL)   
      {   
                        RedrawWindow(rectArg,   NULL,   RDW_INVALIDATE|RDW_NOCHILDREN);   
      return;   
      }   
      ASSERT_VALID(pDC);   
        
      //   otherwise,   actually   draw   
                        COLORREF   clrGray   =   RGB(   204,   204,   204   );   
      if(nType   ==   splitBorder)   
      {   
      pDC->Draw3dRect(rectArg,   clrGray   ,   clrGray     );   
      rect.DeflateRect(1,   1);   
      pDC->Draw3dRect(   rectArg,   clrGray   ,   clrGray   );   
      return;   
      }   
                      pDC->FillSolidRect(   rectArg,   clrGray   );       
        
      }   
        
      3:比较简单的办法就是重载splitter的OnMouseMove函数,比如你想设定该竖直分割条最左不得小于20象素   
      void   CMySplitter::OnMouseMove(UINT   nFlags,   CPoint   point)     
      {   
      //   TODO:   Add   your   message   handler   code   here   and/or   call   default   
        
      if(   point.x   >   20   )   
            CSplitterWnd::OnMouseMove(nFlags,   point);   
                        else   
                              return;   
      }   
        
      4:Splitter也是窗口,当然可以,不过我不知道这样做有什么意义哦?
  • 相关阅读:
    SQL分类
    简单poi读取excel
    Linux命令(2)-rm删除文件
    Linux下使用yum安装MariaDB
    linux下vi命令
    等价类划分法设计测试用例
    Linux命令(1)-创建文件
    职场面试必知:如何回答为何离开上一家公司
    软件测试的原则
    JAVA数组去除重复数据
  • 原文地址:https://www.cnblogs.com/rainduck/p/1533751.html
Copyright © 2011-2022 走看看