zoukankan      html  css  js  c++  java
  • MFC 文档/视图

    1.文档修改后,关闭时需要保存,主要用到2个函数,在需要更改文档内容的函数里调用SetModifiedFlag(TRUE),另一个就是SaveModified()函数,简单的例子:

    BOOL CMFC_Doc::SaveModified()
    {
        // TODO: 在此添加专用代码和/或调用基类
        return CDocument::SaveModified();
    }
    void CMFC_Doc::SetColor()
    {
        m_color=RGB(0,0,0);
        SetModifiedFlag(TRUE);
        UpdateAllViews(NULL);
    }
    /////////////////////////////////////////////////////////
    void CMFC_View::OnLButtonDown(UINT nFlags, CPoint pos)
    {
            CMFC_Doc *pDoc=GetDocument();
            pDoc->SetColor();
        
    }

     2.滚动条滚动时防止重绘造成闪烁,可以用GetClipBox函数只重绘显示的区域,该函数的用法:

        CRect rect;
        CClientDC dc(this);
        OnPrepareDC(&dc); //在非OnDraw()函数中需要加上这一句
        dc.GetClipBox(&rect);
        CString str;
        str.Format(_T("顶部=%d,底部=%d"),rect.top,rect.bottom);//滚动一下滚动条,再看看效果
        AfxMessageBox(str);    

     3.如何删除文档标题呢(如:无标题-Hello_world),怎么把“无标题-”三个字去掉呢?很简单,就一句话:

    BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
    {
        if( !CFrameWnd::PreCreateWindow(cs) )
            return FALSE;
        // TODO: 在此处通过修改
        //  CREATESTRUCT cs 来修改窗口类或样式
    
        cs.style&=~FWS_ADDTOTITLE;//就是这句话
    
        return TRUE;
    }
  • 相关阅读:
    Scheduled定时任务的触发规则
    linux设置系统时间为当前网络时间
    idea控制台打印日志出现乱码
    Nginx配置高可用的集群
    Nginx实现负载均衡
    BigDecimal比较大小
    Java调用第三方系统接口获取数据
    sql中主要关键字的执行顺序
    ASP.NET.Core --Jenkins+Docker
    ASP.NET.Core --Swagger+Route
  • 原文地址:https://www.cnblogs.com/duyy/p/3795907.html
Copyright © 2011-2022 走看看