zoukankan      html  css  js  c++  java
  • 关于CDC在非控件类中的使用

       在非CStatic的派生类中,由于进行图形的绘制的话,我们需要对该类传入一个CDC以便于绘画。这是因为非CStatic等控件类无法自己产生onPaint这类的消息,因此需要借传入的CDC进行回执,然后回执在其他的内存上,最后达到绘图的效果。

               但是,在这里面有一个问题,当我们直接传入CDC的时候,往往会造成一个访问私有成员变量的错误,如下:
    void CBaseDlg:: ShowLoading(CDC  desDC/*desDC*/ )
    {
           CLoading *pLoading    = CLoading::GetInstance ();
           pLoading->ShowLoading ( desDC);
    }
            这个时候,往往会产生编译错误,如下:

        即使是我们将改变量的CDC改为公共变量,也依然不能够编译通过,那么解决方法改如何呢??
    方法就是利用指针,而非变量本身。将上述的借口设计修改为:
    void CBaseDlg:: ShowLoading(CDC *pDC/*desDC*/ )
               以指针的方式进行调用和绘画,就能够通过。
  • 相关阅读:
    欧拉路问题
    树上依赖背包总结
    树状数组的应用
    KMP
    深探树形dp
    再探树形dp
    日常水题
    深入hash
    同一控制下的企业合并,长期股权投资成本与支付账面之间的差额计入资本公积
    资本公积冲减留存收益
  • 原文地址:https://www.cnblogs.com/snake-hand/p/3159597.html
Copyright © 2011-2022 走看看