C++技巧之三

发表于:2007-07-01来源:作者:点击数: 标签:
代码清单1 window_update_scope的节略本 /* ///////////////////////////////////////////////////////////// * * ... * * Extract from winstl_window_update_scope.h *摘录自 winstl_window_update_scope.h * * www: http://www.synesis.com.au/winstl * h

代码清单1 window_update_scope的节略本

/* ///////////////////////////////////////////////////////////// * * ... * * Extract from winstl_window_update_scope.h
*摘录自 winstl_window_update_scope.h * * www:        http://www.synesis.com.au/winstl *             http://www.winstl.org/ * * Copyright (C) 2002, Synesis Software Pty Ltd.
*版权所有 (C) 2002, Synesis Software Pty Ltd.公司 * (Licensed under the Synesis Software Standard Source License: *  )* (由Synesis Software Standard Source License授权许可: *  ) * * ... * * ////////////////////////////////////////////////////////// */ ...  namespace winstl{     class window_update_scope    {
// Construction
// 构造    public:        // Takes a HWND and changes it´s current update-status,)        // which is set back to the original state in the        // destructor.
// 取得HWND 句柄并改变其当前更新状态,在析构器中设置其回到初始状态。        ws_explicit_k window_update_scope(HWND hwnd)            : m_bIsLocked(hwnd != NULL && ::LockWindowUpdate(hwnd))        {}         ~window_update_scope() winstl_throw_0()        {            if(m_bIsLocked)            {                // Lock was suclearcase/" target="_blank" >ccessful, so undo here
// 锁定成功,因此此处反向操作                ::LockWindowUpdate(NULL);            }        } 
// Members 
//成员变量    protected:        ws_bool_t   m_bIsLocked; 
// Not to be implemented 
//不被实现    private:        window_update_scope(window_update_scope const &rhs);        window_update_scope const            &operator =(window_update_scope const &rhs);    }; } // namespace winstl //名称空间winstl

原文转自:http://www.ltesting.net